{
  "nested": {
    "google": {
      "nested": {
        "storage": {
          "nested": {
            "control": {
              "nested": {
                "v2": {
                  "options": {
                    "csharp_namespace": "Google.Cloud.Storage.Control.V2",
                    "go_package": "cloud.google.com/go/storage/control/apiv2/controlpb;controlpb",
                    "java_multiple_files": true,
                    "java_outer_classname": "StorageControlProto",
                    "java_package": "com.google.storage.control.v2",
                    "php_namespace": "Google\\Cloud\\Storage\\Control\\V2",
                    "ruby_package": "Google::Cloud::Storage::Control::V2",
                    "(google.api.resource_definition).type": "storage.googleapis.com/Bucket",
                    "(google.api.resource_definition).pattern": "projects/{project}/buckets/{bucket}"
                  },
                  "nested": {
                    "StorageControl": {
                      "options": {
                        "(google.api.default_host)": "storage.googleapis.com",
                        "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.read-only,https://www.googleapis.com/auth/devstorage.full_control,https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/devstorage.read_write"
                      },
                      "methods": {
                        "CreateFolder": {
                          "requestType": "CreateFolderRequest",
                          "responseType": "Folder",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "parent",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                            "(google.api.method_signature)": "parent,folder,folder_id"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "parent",
                                  "path_template": "{bucket=**}"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "parent,folder,folder_id"
                            }
                          ]
                        },
                        "DeleteFolder": {
                          "requestType": "DeleteFolderRequest",
                          "responseType": "google.protobuf.Empty",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "GetFolder": {
                          "requestType": "GetFolderRequest",
                          "responseType": "Folder",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "ListFolders": {
                          "requestType": "ListFoldersRequest",
                          "responseType": "ListFoldersResponse",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "parent",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                            "(google.api.method_signature)": "parent"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "parent",
                                  "path_template": "{bucket=**}"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "parent"
                            }
                          ]
                        },
                        "RenameFolder": {
                          "requestType": "RenameFolderRequest",
                          "responseType": "google.longrunning.Operation",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name,destination_folder_id",
                            "(google.longrunning.operation_info).response_type": "Folder",
                            "(google.longrunning.operation_info).metadata_type": "RenameFolderMetadata"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name,destination_folder_id"
                            },
                            {
                              "(google.longrunning.operation_info)": {
                                "response_type": "Folder",
                                "metadata_type": "RenameFolderMetadata"
                              }
                            }
                          ]
                        },
                        "DeleteFolderRecursive": {
                          "requestType": "DeleteFolderRecursiveRequest",
                          "responseType": "google.longrunning.Operation",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name",
                            "(google.longrunning.operation_info).response_type": "google.protobuf.Empty",
                            "(google.longrunning.operation_info).metadata_type": "DeleteFolderRecursiveMetadata"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            },
                            {
                              "(google.longrunning.operation_info)": {
                                "response_type": "google.protobuf.Empty",
                                "metadata_type": "DeleteFolderRecursiveMetadata"
                              }
                            }
                          ]
                        },
                        "GetStorageLayout": {
                          "requestType": "GetStorageLayoutRequest",
                          "responseType": "StorageLayout",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "CreateManagedFolder": {
                          "requestType": "CreateManagedFolderRequest",
                          "responseType": "ManagedFolder",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "parent",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                            "(google.api.method_signature)": "parent,managed_folder,managed_folder_id"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "parent",
                                  "path_template": "{bucket=**}"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "parent,managed_folder,managed_folder_id"
                            }
                          ]
                        },
                        "DeleteManagedFolder": {
                          "requestType": "DeleteManagedFolderRequest",
                          "responseType": "google.protobuf.Empty",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "GetManagedFolder": {
                          "requestType": "GetManagedFolderRequest",
                          "responseType": "ManagedFolder",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "ListManagedFolders": {
                          "requestType": "ListManagedFoldersRequest",
                          "responseType": "ListManagedFoldersResponse",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "parent",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                            "(google.api.method_signature)": "parent"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "parent",
                                  "path_template": "{bucket=**}"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "parent"
                            }
                          ]
                        },
                        "CreateAnywhereCache": {
                          "requestType": "CreateAnywhereCacheRequest",
                          "responseType": "google.longrunning.Operation",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "parent",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                            "(google.api.method_signature)": "parent,anywhere_cache",
                            "(google.longrunning.operation_info).response_type": "AnywhereCache",
                            "(google.longrunning.operation_info).metadata_type": "CreateAnywhereCacheMetadata"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "parent",
                                  "path_template": "{bucket=**}"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "parent,anywhere_cache"
                            },
                            {
                              "(google.longrunning.operation_info)": {
                                "response_type": "AnywhereCache",
                                "metadata_type": "CreateAnywhereCacheMetadata"
                              }
                            }
                          ]
                        },
                        "UpdateAnywhereCache": {
                          "requestType": "UpdateAnywhereCacheRequest",
                          "responseType": "google.longrunning.Operation",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "anywhere_cache.name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "anywhere_cache,update_mask",
                            "(google.longrunning.operation_info).response_type": "AnywhereCache",
                            "(google.longrunning.operation_info).metadata_type": "UpdateAnywhereCacheMetadata"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "anywhere_cache.name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "anywhere_cache,update_mask"
                            },
                            {
                              "(google.longrunning.operation_info)": {
                                "response_type": "AnywhereCache",
                                "metadata_type": "UpdateAnywhereCacheMetadata"
                              }
                            }
                          ]
                        },
                        "DisableAnywhereCache": {
                          "requestType": "DisableAnywhereCacheRequest",
                          "responseType": "AnywhereCache",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "PauseAnywhereCache": {
                          "requestType": "PauseAnywhereCacheRequest",
                          "responseType": "AnywhereCache",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "ResumeAnywhereCache": {
                          "requestType": "ResumeAnywhereCacheRequest",
                          "responseType": "AnywhereCache",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "GetAnywhereCache": {
                          "requestType": "GetAnywhereCacheRequest",
                          "responseType": "AnywhereCache",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "name",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "name",
                                  "path_template": "{bucket=projects/*/buckets/*}/**"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "ListAnywhereCaches": {
                          "requestType": "ListAnywhereCachesRequest",
                          "responseType": "ListAnywhereCachesResponse",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "parent",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                            "(google.api.method_signature)": "parent"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": {
                                  "field": "parent",
                                  "path_template": "{bucket=**}"
                                }
                              }
                            },
                            {
                              "(google.api.method_signature)": "parent"
                            }
                          ]
                        },
                        "GetProjectIntelligenceConfig": {
                          "requestType": "GetProjectIntelligenceConfigRequest",
                          "responseType": "IntelligenceConfig",
                          "options": {
                            "(google.api.http).get": "/v2/{name=projects/*/locations/*/intelligenceConfig}",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.http)": {
                                "get": "/v2/{name=projects/*/locations/*/intelligenceConfig}"
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "UpdateProjectIntelligenceConfig": {
                          "requestType": "UpdateProjectIntelligenceConfigRequest",
                          "responseType": "IntelligenceConfig",
                          "options": {
                            "(google.api.http).patch": "/v2/{intelligence_config.name=projects/*/locations/*/intelligenceConfig}",
                            "(google.api.http).body": "intelligence_config",
                            "(google.api.method_signature)": "intelligence_config,update_mask"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.http)": {
                                "patch": "/v2/{intelligence_config.name=projects/*/locations/*/intelligenceConfig}",
                                "body": "intelligence_config"
                              }
                            },
                            {
                              "(google.api.method_signature)": "intelligence_config,update_mask"
                            }
                          ]
                        },
                        "GetFolderIntelligenceConfig": {
                          "requestType": "GetFolderIntelligenceConfigRequest",
                          "responseType": "IntelligenceConfig",
                          "options": {
                            "(google.api.http).get": "/v2/{name=folders/*/locations/*/intelligenceConfig}",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.http)": {
                                "get": "/v2/{name=folders/*/locations/*/intelligenceConfig}"
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "UpdateFolderIntelligenceConfig": {
                          "requestType": "UpdateFolderIntelligenceConfigRequest",
                          "responseType": "IntelligenceConfig",
                          "options": {
                            "(google.api.http).patch": "/v2/{intelligence_config.name=folders/*/locations/*/intelligenceConfig}",
                            "(google.api.http).body": "intelligence_config",
                            "(google.api.method_signature)": "intelligence_config,update_mask"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.http)": {
                                "patch": "/v2/{intelligence_config.name=folders/*/locations/*/intelligenceConfig}",
                                "body": "intelligence_config"
                              }
                            },
                            {
                              "(google.api.method_signature)": "intelligence_config,update_mask"
                            }
                          ]
                        },
                        "GetOrganizationIntelligenceConfig": {
                          "requestType": "GetOrganizationIntelligenceConfigRequest",
                          "responseType": "IntelligenceConfig",
                          "options": {
                            "(google.api.http).get": "/v2/{name=organizations/*/locations/*/intelligenceConfig}",
                            "(google.api.method_signature)": "name"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.http)": {
                                "get": "/v2/{name=organizations/*/locations/*/intelligenceConfig}"
                              }
                            },
                            {
                              "(google.api.method_signature)": "name"
                            }
                          ]
                        },
                        "UpdateOrganizationIntelligenceConfig": {
                          "requestType": "UpdateOrganizationIntelligenceConfigRequest",
                          "responseType": "IntelligenceConfig",
                          "options": {
                            "(google.api.http).patch": "/v2/{intelligence_config.name=organizations/*/locations/*/intelligenceConfig}",
                            "(google.api.http).body": "intelligence_config",
                            "(google.api.method_signature)": "intelligence_config,update_mask"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.http)": {
                                "patch": "/v2/{intelligence_config.name=organizations/*/locations/*/intelligenceConfig}",
                                "body": "intelligence_config"
                              }
                            },
                            {
                              "(google.api.method_signature)": "intelligence_config,update_mask"
                            }
                          ]
                        },
                        "GetIamPolicy": {
                          "requestType": "google.iam.v1.GetIamPolicyRequest",
                          "responseType": "google.iam.v1.Policy",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "resource",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "resource"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": [
                                  {
                                    "field": "resource",
                                    "path_template": "{bucket=**}"
                                  },
                                  {
                                    "field": "resource",
                                    "path_template": "{bucket=projects/*/buckets/*}/**"
                                  }
                                ]
                              }
                            },
                            {
                              "(google.api.method_signature)": "resource"
                            }
                          ]
                        },
                        "SetIamPolicy": {
                          "requestType": "google.iam.v1.SetIamPolicyRequest",
                          "responseType": "google.iam.v1.Policy",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "resource",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                            "(google.api.method_signature)": "resource,policy"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": [
                                  {
                                    "field": "resource",
                                    "path_template": "{bucket=**}"
                                  },
                                  {
                                    "field": "resource",
                                    "path_template": "{bucket=projects/*/buckets/*}/**"
                                  }
                                ]
                              }
                            },
                            {
                              "(google.api.method_signature)": "resource,policy"
                            }
                          ]
                        },
                        "TestIamPermissions": {
                          "requestType": "google.iam.v1.TestIamPermissionsRequest",
                          "responseType": "google.iam.v1.TestIamPermissionsResponse",
                          "options": {
                            "(google.api.routing).routing_parameters.field": "resource",
                            "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/managedFolders/**",
                            "(google.api.method_signature)": "resource,permissions"
                          },
                          "parsedOptions": [
                            {
                              "(google.api.routing)": {
                                "routing_parameters": [
                                  {
                                    "field": "resource",
                                    "path_template": "{bucket=**}"
                                  },
                                  {
                                    "field": "resource",
                                    "path_template": "{bucket=projects/*/buckets/*}/objects/**"
                                  },
                                  {
                                    "field": "resource",
                                    "path_template": "{bucket=projects/*/buckets/*}/managedFolders/**"
                                  }
                                ]
                              }
                            },
                            {
                              "(google.api.method_signature)": "resource,permissions"
                            }
                          ]
                        }
                      }
                    },
                    "PendingRenameInfo": {
                      "fields": {
                        "operation": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        }
                      }
                    },
                    "Folder": {
                      "options": {
                        "(google.api.resource).type": "storage.googleapis.com/Folder",
                        "(google.api.resource).pattern": "projects/{project}/buckets/{bucket}/folders/{folder=**}",
                        "(google.api.resource).plural": "folders",
                        "(google.api.resource).singular": "folder"
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "IDENTIFIER"
                          }
                        },
                        "metageneration": {
                          "type": "int64",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "createTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "updateTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 5,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "pendingRenameInfo": {
                          "type": "PendingRenameInfo",
                          "id": 7,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        }
                      }
                    },
                    "GetFolderRequest": {
                      "oneofs": {
                        "_ifMetagenerationMatch": {
                          "oneof": [
                            "ifMetagenerationMatch"
                          ]
                        },
                        "_ifMetagenerationNotMatch": {
                          "oneof": [
                            "ifMetagenerationNotMatch"
                          ]
                        }
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 6,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/Folder"
                          }
                        },
                        "ifMetagenerationMatch": {
                          "type": "int64",
                          "id": 3,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "ifMetagenerationNotMatch": {
                          "type": "int64",
                          "id": 4,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 5,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "CreateFolderRequest": {
                      "fields": {
                        "parent": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).child_type": "storage.googleapis.com/Folder"
                          }
                        },
                        "folder": {
                          "type": "Folder",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "folderId": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "recursive": {
                          "type": "bool",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 5,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "DeleteFolderRequest": {
                      "oneofs": {
                        "_ifMetagenerationMatch": {
                          "oneof": [
                            "ifMetagenerationMatch"
                          ]
                        },
                        "_ifMetagenerationNotMatch": {
                          "oneof": [
                            "ifMetagenerationNotMatch"
                          ]
                        }
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 6,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/Folder"
                          }
                        },
                        "ifMetagenerationMatch": {
                          "type": "int64",
                          "id": 3,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "ifMetagenerationNotMatch": {
                          "type": "int64",
                          "id": 4,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 5,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ListFoldersRequest": {
                      "fields": {
                        "parent": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).child_type": "storage.googleapis.com/Folder"
                          }
                        },
                        "pageSize": {
                          "type": "int32",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "pageToken": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "prefix": {
                          "type": "string",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "delimiter": {
                          "type": "string",
                          "id": 8,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "lexicographicStart": {
                          "type": "string",
                          "id": 6,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "lexicographicEnd": {
                          "type": "string",
                          "id": 7,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 9,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ListFoldersResponse": {
                      "fields": {
                        "folders": {
                          "rule": "repeated",
                          "type": "Folder",
                          "id": 1
                        },
                        "nextPageToken": {
                          "type": "string",
                          "id": 2
                        }
                      }
                    },
                    "RenameFolderRequest": {
                      "oneofs": {
                        "_ifMetagenerationMatch": {
                          "oneof": [
                            "ifMetagenerationMatch"
                          ]
                        },
                        "_ifMetagenerationNotMatch": {
                          "oneof": [
                            "ifMetagenerationNotMatch"
                          ]
                        }
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 7,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/Folder"
                          }
                        },
                        "destinationFolderId": {
                          "type": "string",
                          "id": 8,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "ifMetagenerationMatch": {
                          "type": "int64",
                          "id": 4,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "ifMetagenerationNotMatch": {
                          "type": "int64",
                          "id": 5,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 6,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "DeleteFolderRecursiveRequest": {
                      "oneofs": {
                        "_ifMetagenerationMatch": {
                          "oneof": [
                            "ifMetagenerationMatch"
                          ]
                        },
                        "_ifMetagenerationNotMatch": {
                          "oneof": [
                            "ifMetagenerationNotMatch"
                          ]
                        }
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/Folder"
                          }
                        },
                        "ifMetagenerationMatch": {
                          "type": "int64",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL",
                            "proto3_optional": true
                          }
                        },
                        "ifMetagenerationNotMatch": {
                          "type": "int64",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL",
                            "proto3_optional": true
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 4,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "CommonLongRunningOperationMetadata": {
                      "fields": {
                        "createTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "endTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "updateTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "type": {
                          "type": "string",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "requestedCancellation": {
                          "type": "bool",
                          "id": 5,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "progressPercent": {
                          "type": "int32",
                          "id": 6,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        }
                      }
                    },
                    "RenameFolderMetadata": {
                      "fields": {
                        "commonMetadata": {
                          "type": "CommonLongRunningOperationMetadata",
                          "id": 1
                        },
                        "sourceFolderId": {
                          "type": "string",
                          "id": 2
                        },
                        "destinationFolderId": {
                          "type": "string",
                          "id": 3
                        }
                      }
                    },
                    "DeleteFolderRecursiveMetadata": {
                      "fields": {
                        "commonMetadata": {
                          "type": "CommonLongRunningOperationMetadata",
                          "id": 1
                        },
                        "folderId": {
                          "type": "string",
                          "id": 2
                        }
                      }
                    },
                    "StorageLayout": {
                      "options": {
                        "(google.api.resource).type": "storage.googleapis.com/StorageLayout",
                        "(google.api.resource).pattern": "projects/{project}/buckets/{bucket}/storageLayout",
                        "(google.api.resource).plural": "storageLayouts",
                        "(google.api.resource).singular": "storageLayout"
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "location": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "locationType": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "customPlacementConfig": {
                          "type": "CustomPlacementConfig",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "hierarchicalNamespace": {
                          "type": "HierarchicalNamespace",
                          "id": 5,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        }
                      },
                      "nested": {
                        "CustomPlacementConfig": {
                          "fields": {
                            "dataLocations": {
                              "rule": "repeated",
                              "type": "string",
                              "id": 1
                            }
                          }
                        },
                        "HierarchicalNamespace": {
                          "fields": {
                            "enabled": {
                              "type": "bool",
                              "id": 1
                            }
                          }
                        }
                      }
                    },
                    "GetStorageLayoutRequest": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/StorageLayout"
                          }
                        },
                        "prefix": {
                          "type": "string",
                          "id": 2
                        },
                        "requestId": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ManagedFolder": {
                      "options": {
                        "(google.api.resource).type": "storage.googleapis.com/ManagedFolder",
                        "(google.api.resource).pattern": "projects/{project}/buckets/{bucket}/managedFolders/{managed_folder=**}",
                        "(google.api.resource).plural": "managedFolders",
                        "(google.api.resource).singular": "managedFolder"
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "IDENTIFIER"
                          }
                        },
                        "metageneration": {
                          "type": "int64",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "createTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "updateTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 5,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        }
                      }
                    },
                    "GetManagedFolderRequest": {
                      "oneofs": {
                        "_ifMetagenerationMatch": {
                          "oneof": [
                            "ifMetagenerationMatch"
                          ]
                        },
                        "_ifMetagenerationNotMatch": {
                          "oneof": [
                            "ifMetagenerationNotMatch"
                          ]
                        }
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 6,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/ManagedFolder"
                          }
                        },
                        "ifMetagenerationMatch": {
                          "type": "int64",
                          "id": 3,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "ifMetagenerationNotMatch": {
                          "type": "int64",
                          "id": 4,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 5,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "CreateManagedFolderRequest": {
                      "fields": {
                        "parent": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).child_type": "storage.googleapis.com/ManagedFolder"
                          }
                        },
                        "managedFolder": {
                          "type": "ManagedFolder",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "managedFolderId": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 4,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "DeleteManagedFolderRequest": {
                      "oneofs": {
                        "_ifMetagenerationMatch": {
                          "oneof": [
                            "ifMetagenerationMatch"
                          ]
                        },
                        "_ifMetagenerationNotMatch": {
                          "oneof": [
                            "ifMetagenerationNotMatch"
                          ]
                        }
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 7,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/ManagedFolder"
                          }
                        },
                        "ifMetagenerationMatch": {
                          "type": "int64",
                          "id": 3,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "ifMetagenerationNotMatch": {
                          "type": "int64",
                          "id": 4,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "allowNonEmpty": {
                          "type": "bool",
                          "id": 5
                        },
                        "requestId": {
                          "type": "string",
                          "id": 6,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ListManagedFoldersRequest": {
                      "fields": {
                        "parent": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).child_type": "storage.googleapis.com/ManagedFolder"
                          }
                        },
                        "pageSize": {
                          "type": "int32",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "pageToken": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "prefix": {
                          "type": "string",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 5,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ListManagedFoldersResponse": {
                      "fields": {
                        "managedFolders": {
                          "rule": "repeated",
                          "type": "ManagedFolder",
                          "id": 1
                        },
                        "nextPageToken": {
                          "type": "string",
                          "id": 2
                        }
                      }
                    },
                    "CreateAnywhereCacheMetadata": {
                      "oneofs": {
                        "_anywhereCacheId": {
                          "oneof": [
                            "anywhereCacheId"
                          ]
                        },
                        "_zone": {
                          "oneof": [
                            "zone"
                          ]
                        },
                        "_ttl": {
                          "oneof": [
                            "ttl"
                          ]
                        },
                        "_admissionPolicy": {
                          "oneof": [
                            "admissionPolicy"
                          ]
                        }
                      },
                      "fields": {
                        "commonMetadata": {
                          "type": "CommonLongRunningOperationMetadata",
                          "id": 1
                        },
                        "anywhereCacheId": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "zone": {
                          "type": "string",
                          "id": 6,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "ttl": {
                          "type": "google.protobuf.Duration",
                          "id": 3,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "admissionPolicy": {
                          "type": "string",
                          "id": 5,
                          "options": {
                            "proto3_optional": true
                          }
                        }
                      }
                    },
                    "UpdateAnywhereCacheMetadata": {
                      "oneofs": {
                        "_anywhereCacheId": {
                          "oneof": [
                            "anywhereCacheId"
                          ]
                        },
                        "_zone": {
                          "oneof": [
                            "zone"
                          ]
                        },
                        "_ttl": {
                          "oneof": [
                            "ttl"
                          ]
                        },
                        "_admissionPolicy": {
                          "oneof": [
                            "admissionPolicy"
                          ]
                        }
                      },
                      "fields": {
                        "commonMetadata": {
                          "type": "CommonLongRunningOperationMetadata",
                          "id": 1
                        },
                        "anywhereCacheId": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "zone": {
                          "type": "string",
                          "id": 5,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "ttl": {
                          "type": "google.protobuf.Duration",
                          "id": 3,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "admissionPolicy": {
                          "type": "string",
                          "id": 4,
                          "options": {
                            "proto3_optional": true
                          }
                        }
                      }
                    },
                    "AnywhereCache": {
                      "options": {
                        "(google.api.resource).type": "storage.googleapis.com/AnywhereCache",
                        "(google.api.resource).pattern": "projects/{project}/buckets/{bucket}/anywhereCaches/{anywhere_cache}",
                        "(google.api.resource).plural": "anywhereCaches",
                        "(google.api.resource).singular": "anywhereCache"
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "IMMUTABLE"
                          }
                        },
                        "zone": {
                          "type": "string",
                          "id": 10,
                          "options": {
                            "(google.api.field_behavior)": "IMMUTABLE"
                          }
                        },
                        "ttl": {
                          "type": "google.protobuf.Duration",
                          "id": 3
                        },
                        "admissionPolicy": {
                          "type": "string",
                          "id": 9
                        },
                        "state": {
                          "type": "string",
                          "id": 5,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "createTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 6,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "updateTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 7,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "pendingUpdate": {
                          "type": "bool",
                          "id": 8,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        }
                      }
                    },
                    "CreateAnywhereCacheRequest": {
                      "fields": {
                        "parent": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).child_type": "storage.googleapis.com/AnywhereCache"
                          }
                        },
                        "anywhereCache": {
                          "type": "AnywhereCache",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 4,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "UpdateAnywhereCacheRequest": {
                      "fields": {
                        "anywhereCache": {
                          "type": "AnywhereCache",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "updateMask": {
                          "type": "google.protobuf.FieldMask",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "DisableAnywhereCacheRequest": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/AnywhereCache"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "PauseAnywhereCacheRequest": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/AnywhereCache"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ResumeAnywhereCacheRequest": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/AnywhereCache"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "GetAnywhereCacheRequest": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/AnywhereCache"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ListAnywhereCachesRequest": {
                      "fields": {
                        "parent": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).child_type": "storage.googleapis.com/AnywhereCache"
                          }
                        },
                        "pageSize": {
                          "type": "int32",
                          "id": 2
                        },
                        "pageToken": {
                          "type": "string",
                          "id": 3
                        },
                        "requestId": {
                          "type": "string",
                          "id": 4,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ListAnywhereCachesResponse": {
                      "fields": {
                        "anywhereCaches": {
                          "rule": "repeated",
                          "type": "AnywhereCache",
                          "id": 1
                        },
                        "nextPageToken": {
                          "type": "string",
                          "id": 2
                        }
                      }
                    },
                    "IntelligenceConfig": {
                      "options": {
                        "(google.api.resource).type": "storage.googleapis.com/IntelligenceConfig",
                        "(google.api.resource).pattern": "projects/{project}/locations/{location}/intelligenceConfig",
                        "(google.api.resource).plural": "intelligenceConfigs",
                        "(google.api.resource).singular": "intelligenceConfig"
                      },
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "IDENTIFIER"
                          }
                        },
                        "editionConfig": {
                          "type": "EditionConfig",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "updateTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "filter": {
                          "type": "Filter",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "effectiveIntelligenceConfig": {
                          "type": "EffectiveIntelligenceConfig",
                          "id": 5,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "trialConfig": {
                          "type": "TrialConfig",
                          "id": 7
                        }
                      },
                      "nested": {
                        "EditionConfig": {
                          "values": {
                            "EDITION_CONFIG_UNSPECIFIED": 0,
                            "INHERIT": 1,
                            "DISABLED": 2,
                            "STANDARD": 3,
                            "TRIAL": 5
                          }
                        },
                        "Filter": {
                          "oneofs": {
                            "cloudStorageLocations": {
                              "oneof": [
                                "includedCloudStorageLocations",
                                "excludedCloudStorageLocations"
                              ]
                            },
                            "cloudStorageBuckets": {
                              "oneof": [
                                "includedCloudStorageBuckets",
                                "excludedCloudStorageBuckets"
                              ]
                            }
                          },
                          "fields": {
                            "includedCloudStorageLocations": {
                              "type": "CloudStorageLocations",
                              "id": 1
                            },
                            "excludedCloudStorageLocations": {
                              "type": "CloudStorageLocations",
                              "id": 2
                            },
                            "includedCloudStorageBuckets": {
                              "type": "CloudStorageBuckets",
                              "id": 3
                            },
                            "excludedCloudStorageBuckets": {
                              "type": "CloudStorageBuckets",
                              "id": 4
                            }
                          },
                          "nested": {
                            "CloudStorageLocations": {
                              "fields": {
                                "locations": {
                                  "rule": "repeated",
                                  "type": "string",
                                  "id": 1,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                }
                              }
                            },
                            "CloudStorageBuckets": {
                              "fields": {
                                "bucketIdRegexes": {
                                  "rule": "repeated",
                                  "type": "string",
                                  "id": 1,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                }
                              }
                            }
                          }
                        },
                        "EffectiveIntelligenceConfig": {
                          "fields": {
                            "effectiveEdition": {
                              "type": "EffectiveEdition",
                              "id": 1,
                              "options": {
                                "(google.api.field_behavior)": "OUTPUT_ONLY"
                              }
                            },
                            "intelligenceConfig": {
                              "type": "string",
                              "id": 2,
                              "options": {
                                "(google.api.field_behavior)": "OUTPUT_ONLY"
                              }
                            }
                          },
                          "nested": {
                            "EffectiveEdition": {
                              "values": {
                                "EFFECTIVE_EDITION_UNSPECIFIED": 0,
                                "NONE": 1,
                                "STANDARD": 2
                              }
                            }
                          }
                        },
                        "TrialConfig": {
                          "fields": {
                            "expireTime": {
                              "type": "google.protobuf.Timestamp",
                              "id": 3,
                              "options": {
                                "(google.api.field_behavior)": "OUTPUT_ONLY"
                              }
                            }
                          }
                        }
                      }
                    },
                    "UpdateOrganizationIntelligenceConfigRequest": {
                      "fields": {
                        "intelligenceConfig": {
                          "type": "IntelligenceConfig",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "updateMask": {
                          "type": "google.protobuf.FieldMask",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "UpdateFolderIntelligenceConfigRequest": {
                      "fields": {
                        "intelligenceConfig": {
                          "type": "IntelligenceConfig",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "updateMask": {
                          "type": "google.protobuf.FieldMask",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "UpdateProjectIntelligenceConfigRequest": {
                      "fields": {
                        "intelligenceConfig": {
                          "type": "IntelligenceConfig",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "updateMask": {
                          "type": "google.protobuf.FieldMask",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "requestId": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_info).format": "UUID4",
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "GetOrganizationIntelligenceConfigRequest": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/IntelligenceConfig"
                          }
                        }
                      }
                    },
                    "GetFolderIntelligenceConfigRequest": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/IntelligenceConfig"
                          }
                        }
                      }
                    },
                    "GetProjectIntelligenceConfigRequest": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED",
                            "(google.api.resource_reference).type": "storage.googleapis.com/IntelligenceConfig"
                          }
                        }
                      }
                    }
                  }
                }
              }
            },
            "v2": {
              "options": {
                "go_package": "cloud.google.com/go/storage/internal/apiv2/storagepb;storagepb",
                "java_multiple_files": true,
                "java_outer_classname": "StorageProto",
                "java_package": "com.google.storage.v2",
                "(google.api.resource_definition).type": "cloudkms.googleapis.com/CryptoKey",
                "(google.api.resource_definition).pattern": "projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}"
              },
              "nested": {
                "Storage": {
                  "options": {
                    "(google.api.default_host)": "storage.googleapis.com",
                    "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.read-only,https://www.googleapis.com/auth/devstorage.full_control,https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/devstorage.read_write"
                  },
                  "methods": {
                    "DeleteBucket": {
                      "requestType": "DeleteBucketRequest",
                      "responseType": "google.protobuf.Empty",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "name",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "name"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "name",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "name"
                        }
                      ]
                    },
                    "GetBucket": {
                      "requestType": "GetBucketRequest",
                      "responseType": "Bucket",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "name",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "name"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "name",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "name"
                        }
                      ]
                    },
                    "CreateBucket": {
                      "requestType": "CreateBucketRequest",
                      "responseType": "Bucket",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "bucket.project",
                        "(google.api.routing).routing_parameters.path_template": "{project=**}",
                        "(google.api.method_signature)": "parent,bucket,bucket_id"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": [
                              {
                                "field": "parent",
                                "path_template": "{project=**}"
                              },
                              {
                                "field": "bucket.project",
                                "path_template": "{project=**}"
                              }
                            ]
                          }
                        },
                        {
                          "(google.api.method_signature)": "parent,bucket,bucket_id"
                        }
                      ]
                    },
                    "ListBuckets": {
                      "requestType": "ListBucketsRequest",
                      "responseType": "ListBucketsResponse",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "parent",
                        "(google.api.routing).routing_parameters.path_template": "{project=**}",
                        "(google.api.method_signature)": "parent"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "parent",
                              "path_template": "{project=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "parent"
                        }
                      ]
                    },
                    "LockBucketRetentionPolicy": {
                      "requestType": "LockBucketRetentionPolicyRequest",
                      "responseType": "Bucket",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "bucket"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "bucket"
                        }
                      ]
                    },
                    "GetIamPolicy": {
                      "requestType": "google.iam.v1.GetIamPolicyRequest",
                      "responseType": "google.iam.v1.Policy",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "resource",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                        "(google.api.method_signature)": "resource"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": [
                              {
                                "field": "resource",
                                "path_template": "{bucket=**}"
                              },
                              {
                                "field": "resource",
                                "path_template": "{bucket=projects/*/buckets/*}/**"
                              }
                            ]
                          }
                        },
                        {
                          "(google.api.method_signature)": "resource"
                        }
                      ]
                    },
                    "SetIamPolicy": {
                      "requestType": "google.iam.v1.SetIamPolicyRequest",
                      "responseType": "google.iam.v1.Policy",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "resource",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                        "(google.api.method_signature)": "resource,policy"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": [
                              {
                                "field": "resource",
                                "path_template": "{bucket=**}"
                              },
                              {
                                "field": "resource",
                                "path_template": "{bucket=projects/*/buckets/*}/**"
                              }
                            ]
                          }
                        },
                        {
                          "(google.api.method_signature)": "resource,policy"
                        }
                      ]
                    },
                    "TestIamPermissions": {
                      "requestType": "google.iam.v1.TestIamPermissionsRequest",
                      "responseType": "google.iam.v1.TestIamPermissionsResponse",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "resource",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/managedFolders/**",
                        "(google.api.method_signature)": "resource,permissions"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": [
                              {
                                "field": "resource",
                                "path_template": "{bucket=**}"
                              },
                              {
                                "field": "resource",
                                "path_template": "{bucket=projects/*/buckets/*}/objects/**"
                              },
                              {
                                "field": "resource",
                                "path_template": "{bucket=projects/*/buckets/*}/managedFolders/**"
                              }
                            ]
                          }
                        },
                        {
                          "(google.api.method_signature)": "resource,permissions"
                        }
                      ]
                    },
                    "UpdateBucket": {
                      "requestType": "UpdateBucketRequest",
                      "responseType": "Bucket",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "bucket.name",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "bucket,update_mask"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "bucket.name",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "bucket,update_mask"
                        }
                      ]
                    },
                    "ComposeObject": {
                      "requestType": "ComposeObjectRequest",
                      "responseType": "StorageObject",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "destination.bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "destination.bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        }
                      ]
                    },
                    "DeleteObject": {
                      "requestType": "DeleteObjectRequest",
                      "responseType": "google.protobuf.Empty",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "bucket,object,generation"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "bucket,object"
                        },
                        {
                          "(google.api.method_signature)": "bucket,object,generation"
                        }
                      ]
                    },
                    "RestoreObject": {
                      "requestType": "RestoreObjectRequest",
                      "responseType": "StorageObject",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "bucket,object,generation"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "bucket,object,generation"
                        }
                      ]
                    },
                    "CancelResumableWrite": {
                      "requestType": "CancelResumableWriteRequest",
                      "responseType": "CancelResumableWriteResponse",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "upload_id",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                        "(google.api.method_signature)": "upload_id"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "upload_id",
                              "path_template": "{bucket=projects/*/buckets/*}/**"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "upload_id"
                        }
                      ]
                    },
                    "GetObject": {
                      "requestType": "GetObjectRequest",
                      "responseType": "StorageObject",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "bucket,object,generation"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "bucket,object"
                        },
                        {
                          "(google.api.method_signature)": "bucket,object,generation"
                        }
                      ]
                    },
                    "ReadObject": {
                      "requestType": "ReadObjectRequest",
                      "responseType": "ReadObjectResponse",
                      "responseStream": true,
                      "options": {
                        "(google.api.routing).routing_parameters.field": "bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "bucket,object,generation"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "bucket,object"
                        },
                        {
                          "(google.api.method_signature)": "bucket,object,generation"
                        }
                      ]
                    },
                    "BidiReadObject": {
                      "requestType": "BidiReadObjectRequest",
                      "requestStream": true,
                      "responseType": "BidiReadObjectResponse",
                      "responseStream": true,
                      "options": {
                        "(google.api.routing).routing_parameters.field": "read_object_spec.bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "read_object_spec.bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        }
                      ]
                    },
                    "UpdateObject": {
                      "requestType": "UpdateObjectRequest",
                      "responseType": "StorageObject",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "object.bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "object,update_mask"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "object.bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "object,update_mask"
                        }
                      ]
                    },
                    "WriteObject": {
                      "requestType": "WriteObjectRequest",
                      "requestStream": true,
                      "responseType": "WriteObjectResponse"
                    },
                    "BidiWriteObject": {
                      "requestType": "BidiWriteObjectRequest",
                      "requestStream": true,
                      "responseType": "BidiWriteObjectResponse",
                      "responseStream": true
                    },
                    "ListObjects": {
                      "requestType": "ListObjectsRequest",
                      "responseType": "ListObjectsResponse",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "parent",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "parent"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "parent",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "parent"
                        }
                      ]
                    },
                    "RewriteObject": {
                      "requestType": "RewriteObjectRequest",
                      "responseType": "RewriteResponse",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "destination_bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": [
                              {
                                "field": "source_bucket"
                              },
                              {
                                "field": "destination_bucket",
                                "path_template": "{bucket=**}"
                              }
                            ]
                          }
                        }
                      ]
                    },
                    "StartResumableWrite": {
                      "requestType": "StartResumableWriteRequest",
                      "responseType": "StartResumableWriteResponse",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "write_object_spec.resource.bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "write_object_spec.resource.bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        }
                      ]
                    },
                    "QueryWriteStatus": {
                      "requestType": "QueryWriteStatusRequest",
                      "responseType": "QueryWriteStatusResponse",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "upload_id",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=projects/*/buckets/*}/**",
                        "(google.api.method_signature)": "upload_id"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "upload_id",
                              "path_template": "{bucket=projects/*/buckets/*}/**"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "upload_id"
                        }
                      ]
                    },
                    "MoveObject": {
                      "requestType": "MoveObjectRequest",
                      "responseType": "StorageObject",
                      "options": {
                        "(google.api.routing).routing_parameters.field": "bucket",
                        "(google.api.routing).routing_parameters.path_template": "{bucket=**}",
                        "(google.api.method_signature)": "bucket,source_object,destination_object"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.routing)": {
                            "routing_parameters": {
                              "field": "bucket",
                              "path_template": "{bucket=**}"
                            }
                          }
                        },
                        {
                          "(google.api.method_signature)": "bucket,source_object,destination_object"
                        }
                      ]
                    }
                  }
                },
                "DeleteBucketRequest": {
                  "oneofs": {
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    }
                  },
                  "fields": {
                    "name": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 2,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "GetBucketRequest": {
                  "oneofs": {
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    },
                    "_readMask": {
                      "oneof": [
                        "readMask"
                      ]
                    }
                  },
                  "fields": {
                    "name": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 2,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "readMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "CreateBucketRequest": {
                  "fields": {
                    "parent": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).child_type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "bucket": {
                      "type": "Bucket",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "bucketId": {
                      "type": "string",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "predefinedAcl": {
                      "type": "string",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "predefinedDefaultObjectAcl": {
                      "type": "string",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "enableObjectRetention": {
                      "type": "bool",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "ListBucketsRequest": {
                  "oneofs": {
                    "_readMask": {
                      "oneof": [
                        "readMask"
                      ]
                    }
                  },
                  "fields": {
                    "parent": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).child_type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "pageSize": {
                      "type": "int32",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "pageToken": {
                      "type": "string",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "prefix": {
                      "type": "string",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "returnPartialSuccess": {
                      "type": "bool",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "ListBucketsResponse": {
                  "fields": {
                    "buckets": {
                      "rule": "repeated",
                      "type": "Bucket",
                      "id": 1
                    },
                    "nextPageToken": {
                      "type": "string",
                      "id": 2
                    },
                    "unreachable": {
                      "rule": "repeated",
                      "type": "string",
                      "id": 3
                    }
                  }
                },
                "LockBucketRetentionPolicyRequest": {
                  "fields": {
                    "bucket": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    }
                  }
                },
                "UpdateBucketRequest": {
                  "oneofs": {
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    }
                  },
                  "fields": {
                    "bucket": {
                      "type": "Bucket",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 2,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "predefinedAcl": {
                      "type": "string",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "predefinedDefaultObjectAcl": {
                      "type": "string",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "updateMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    }
                  }
                },
                "ComposeObjectRequest": {
                  "oneofs": {
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_deleteSourceObjects": {
                      "oneof": [
                        "deleteSourceObjects"
                      ]
                    }
                  },
                  "fields": {
                    "destination": {
                      "type": "StorageObject",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "sourceObjects": {
                      "rule": "repeated",
                      "type": "SourceObject",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "destinationPredefinedAcl": {
                      "type": "string",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "kmsKey": {
                      "type": "string",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "(google.api.resource_reference).type": "cloudkms.googleapis.com/CryptoKey"
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "objectChecksums": {
                      "type": "ObjectChecksums",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "deleteSourceObjects": {
                      "type": "bool",
                      "id": 11,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  },
                  "nested": {
                    "SourceObject": {
                      "fields": {
                        "name": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "REQUIRED"
                          }
                        },
                        "generation": {
                          "type": "int64",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "objectPreconditions": {
                          "type": "ObjectPreconditions",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      },
                      "nested": {
                        "ObjectPreconditions": {
                          "oneofs": {
                            "_ifGenerationMatch": {
                              "oneof": [
                                "ifGenerationMatch"
                              ]
                            }
                          },
                          "fields": {
                            "ifGenerationMatch": {
                              "type": "int64",
                              "id": 1,
                              "options": {
                                "proto3_optional": true
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                },
                "DeleteObjectRequest": {
                  "oneofs": {
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    }
                  },
                  "fields": {
                    "bucket": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "object": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "generation": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 6,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 7,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 8,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "RestoreObjectRequest": {
                  "oneofs": {
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    },
                    "_copySourceAcl": {
                      "oneof": [
                        "copySourceAcl"
                      ]
                    }
                  },
                  "fields": {
                    "bucket": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "object": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "generation": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "restoreToken": {
                      "type": "string",
                      "id": 11,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 6,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 7,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "copySourceAcl": {
                      "type": "bool",
                      "id": 9,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "CancelResumableWriteRequest": {
                  "fields": {
                    "uploadId": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    }
                  }
                },
                "CancelResumableWriteResponse": {
                  "fields": {}
                },
                "ReadObjectRequest": {
                  "oneofs": {
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    },
                    "_readMask": {
                      "oneof": [
                        "readMask"
                      ]
                    }
                  },
                  "fields": {
                    "bucket": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "object": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "generation": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readOffset": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readLimit": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 6,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 7,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 8,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 9,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 12,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "GetObjectRequest": {
                  "oneofs": {
                    "_softDeleted": {
                      "oneof": [
                        "softDeleted"
                      ]
                    },
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    },
                    "_readMask": {
                      "oneof": [
                        "readMask"
                      ]
                    }
                  },
                  "fields": {
                    "bucket": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "object": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "generation": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "softDeleted": {
                      "type": "bool",
                      "id": 11,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 6,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 7,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 10,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "restoreToken": {
                      "type": "string",
                      "id": 12,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "ReadObjectResponse": {
                  "fields": {
                    "checksummedData": {
                      "type": "ChecksummedData",
                      "id": 1
                    },
                    "objectChecksums": {
                      "type": "ObjectChecksums",
                      "id": 2
                    },
                    "contentRange": {
                      "type": "ContentRange",
                      "id": 3
                    },
                    "metadata": {
                      "type": "StorageObject",
                      "id": 4
                    }
                  }
                },
                "BidiReadObjectSpec": {
                  "oneofs": {
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    },
                    "_readMask": {
                      "oneof": [
                        "readMask"
                      ]
                    },
                    "_readHandle": {
                      "oneof": [
                        "readHandle"
                      ]
                    },
                    "_routingToken": {
                      "oneof": [
                        "routingToken"
                      ]
                    }
                  },
                  "fields": {
                    "bucket": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "object": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "generation": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 6,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 7,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 12,
                      "options": {
                        "deprecated": true,
                        "proto3_optional": true
                      }
                    },
                    "readHandle": {
                      "type": "BidiReadHandle",
                      "id": 13,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "routingToken": {
                      "type": "string",
                      "id": 14,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "BidiReadObjectRequest": {
                  "fields": {
                    "readObjectSpec": {
                      "type": "BidiReadObjectSpec",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readRanges": {
                      "rule": "repeated",
                      "type": "ReadRange",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "BidiReadObjectResponse": {
                  "fields": {
                    "objectDataRanges": {
                      "rule": "repeated",
                      "type": "ObjectRangeData",
                      "id": 6
                    },
                    "metadata": {
                      "type": "StorageObject",
                      "id": 4
                    },
                    "readHandle": {
                      "type": "BidiReadHandle",
                      "id": 7
                    }
                  }
                },
                "BidiReadObjectRedirectedError": {
                  "oneofs": {
                    "_routingToken": {
                      "oneof": [
                        "routingToken"
                      ]
                    }
                  },
                  "fields": {
                    "readHandle": {
                      "type": "BidiReadHandle",
                      "id": 1
                    },
                    "routingToken": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "BidiWriteObjectRedirectedError": {
                  "oneofs": {
                    "_routingToken": {
                      "oneof": [
                        "routingToken"
                      ]
                    },
                    "_writeHandle": {
                      "oneof": [
                        "writeHandle"
                      ]
                    },
                    "_generation": {
                      "oneof": [
                        "generation"
                      ]
                    }
                  },
                  "fields": {
                    "routingToken": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "writeHandle": {
                      "type": "BidiWriteHandle",
                      "id": 2,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "generation": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "BidiReadObjectError": {
                  "fields": {
                    "readRangeErrors": {
                      "rule": "repeated",
                      "type": "ReadRangeError",
                      "id": 1
                    }
                  }
                },
                "ReadRangeError": {
                  "fields": {
                    "readId": {
                      "type": "int64",
                      "id": 1
                    },
                    "status": {
                      "type": "google.rpc.Status",
                      "id": 2
                    }
                  }
                },
                "ReadRange": {
                  "fields": {
                    "readOffset": {
                      "type": "int64",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "readLength": {
                      "type": "int64",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readId": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    }
                  }
                },
                "ObjectRangeData": {
                  "fields": {
                    "checksummedData": {
                      "type": "ChecksummedData",
                      "id": 1
                    },
                    "readRange": {
                      "type": "ReadRange",
                      "id": 2
                    },
                    "rangeEnd": {
                      "type": "bool",
                      "id": 3
                    }
                  }
                },
                "BidiReadHandle": {
                  "fields": {
                    "handle": {
                      "type": "bytes",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    }
                  }
                },
                "BidiWriteHandle": {
                  "fields": {
                    "handle": {
                      "type": "bytes",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    }
                  }
                },
                "WriteObjectSpec": {
                  "oneofs": {
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    },
                    "_objectSize": {
                      "oneof": [
                        "objectSize"
                      ]
                    },
                    "_appendable": {
                      "oneof": [
                        "appendable"
                      ]
                    }
                  },
                  "fields": {
                    "resource": {
                      "type": "StorageObject",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "predefinedAcl": {
                      "type": "string",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 6,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "objectSize": {
                      "type": "int64",
                      "id": 8,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "appendable": {
                      "type": "bool",
                      "id": 9,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "WriteObjectRequest": {
                  "oneofs": {
                    "firstMessage": {
                      "oneof": [
                        "uploadId",
                        "writeObjectSpec"
                      ]
                    },
                    "data": {
                      "oneof": [
                        "checksummedData"
                      ]
                    }
                  },
                  "fields": {
                    "uploadId": {
                      "type": "string",
                      "id": 1
                    },
                    "writeObjectSpec": {
                      "type": "WriteObjectSpec",
                      "id": 2
                    },
                    "writeOffset": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "checksummedData": {
                      "type": "ChecksummedData",
                      "id": 4
                    },
                    "objectChecksums": {
                      "type": "ObjectChecksums",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "finishWrite": {
                      "type": "bool",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "WriteObjectResponse": {
                  "oneofs": {
                    "writeStatus": {
                      "oneof": [
                        "persistedSize",
                        "resource"
                      ]
                    }
                  },
                  "fields": {
                    "persistedSize": {
                      "type": "int64",
                      "id": 1
                    },
                    "resource": {
                      "type": "StorageObject",
                      "id": 2
                    },
                    "persistedDataChecksums": {
                      "type": "ObjectChecksums",
                      "id": 3
                    }
                  }
                },
                "AppendObjectSpec": {
                  "oneofs": {
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    },
                    "_routingToken": {
                      "oneof": [
                        "routingToken"
                      ]
                    },
                    "_writeHandle": {
                      "oneof": [
                        "writeHandle"
                      ]
                    }
                  },
                  "fields": {
                    "bucket": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "object": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "generation": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "routingToken": {
                      "type": "string",
                      "id": 6,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "writeHandle": {
                      "type": "BidiWriteHandle",
                      "id": 7,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "BidiWriteObjectRequest": {
                  "oneofs": {
                    "firstMessage": {
                      "oneof": [
                        "uploadId",
                        "writeObjectSpec",
                        "appendObjectSpec"
                      ]
                    },
                    "data": {
                      "oneof": [
                        "checksummedData"
                      ]
                    }
                  },
                  "fields": {
                    "uploadId": {
                      "type": "string",
                      "id": 1
                    },
                    "writeObjectSpec": {
                      "type": "WriteObjectSpec",
                      "id": 2
                    },
                    "appendObjectSpec": {
                      "type": "AppendObjectSpec",
                      "id": 11
                    },
                    "writeOffset": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "checksummedData": {
                      "type": "ChecksummedData",
                      "id": 4
                    },
                    "objectChecksums": {
                      "type": "ObjectChecksums",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "stateLookup": {
                      "type": "bool",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "flush": {
                      "type": "bool",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "finishWrite": {
                      "type": "bool",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "BidiWriteObjectResponse": {
                  "oneofs": {
                    "writeStatus": {
                      "oneof": [
                        "persistedSize",
                        "resource"
                      ]
                    },
                    "_writeHandle": {
                      "oneof": [
                        "writeHandle"
                      ]
                    }
                  },
                  "fields": {
                    "persistedSize": {
                      "type": "int64",
                      "id": 1
                    },
                    "resource": {
                      "type": "StorageObject",
                      "id": 2
                    },
                    "persistedDataChecksums": {
                      "type": "ObjectChecksums",
                      "id": 4
                    },
                    "writeHandle": {
                      "type": "BidiWriteHandle",
                      "id": 3,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "ListObjectsRequest": {
                  "oneofs": {
                    "_readMask": {
                      "oneof": [
                        "readMask"
                      ]
                    }
                  },
                  "fields": {
                    "parent": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "pageSize": {
                      "type": "int32",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "pageToken": {
                      "type": "string",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "delimiter": {
                      "type": "string",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "includeTrailingDelimiter": {
                      "type": "bool",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "prefix": {
                      "type": "string",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "versions": {
                      "type": "bool",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "readMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 8,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "lexicographicStart": {
                      "type": "string",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "lexicographicEnd": {
                      "type": "string",
                      "id": 11,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "softDeleted": {
                      "type": "bool",
                      "id": 12,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "includeFoldersAsPrefixes": {
                      "type": "bool",
                      "id": 13,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "matchGlob": {
                      "type": "string",
                      "id": 14,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "filter": {
                      "type": "string",
                      "id": 15,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "QueryWriteStatusRequest": {
                  "fields": {
                    "uploadId": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "QueryWriteStatusResponse": {
                  "oneofs": {
                    "writeStatus": {
                      "oneof": [
                        "persistedSize",
                        "resource"
                      ]
                    }
                  },
                  "fields": {
                    "persistedSize": {
                      "type": "int64",
                      "id": 1
                    },
                    "resource": {
                      "type": "StorageObject",
                      "id": 2
                    },
                    "persistedDataChecksums": {
                      "type": "ObjectChecksums",
                      "id": 3
                    }
                  }
                },
                "RewriteObjectRequest": {
                  "oneofs": {
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    },
                    "_ifSourceGenerationMatch": {
                      "oneof": [
                        "ifSourceGenerationMatch"
                      ]
                    },
                    "_ifSourceGenerationNotMatch": {
                      "oneof": [
                        "ifSourceGenerationNotMatch"
                      ]
                    },
                    "_ifSourceMetagenerationMatch": {
                      "oneof": [
                        "ifSourceMetagenerationMatch"
                      ]
                    },
                    "_ifSourceMetagenerationNotMatch": {
                      "oneof": [
                        "ifSourceMetagenerationNotMatch"
                      ]
                    }
                  },
                  "fields": {
                    "destinationName": {
                      "type": "string",
                      "id": 24,
                      "options": {
                        "(google.api.field_behavior)": "IMMUTABLE"
                      }
                    },
                    "destinationBucket": {
                      "type": "string",
                      "id": 25,
                      "options": {
                        "(google.api.field_behavior)": "IMMUTABLE",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "destinationKmsKey": {
                      "type": "string",
                      "id": 27,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "(google.api.resource_reference).type": "cloudkms.googleapis.com/CryptoKey"
                      }
                    },
                    "destination": {
                      "type": "StorageObject",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "sourceBucket": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "sourceObject": {
                      "type": "string",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "sourceGeneration": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "rewriteToken": {
                      "type": "string",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "destinationPredefinedAcl": {
                      "type": "string",
                      "id": 28,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 7,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 8,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 9,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 10,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifSourceGenerationMatch": {
                      "type": "int64",
                      "id": 11,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifSourceGenerationNotMatch": {
                      "type": "int64",
                      "id": 12,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifSourceMetagenerationMatch": {
                      "type": "int64",
                      "id": 13,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifSourceMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 14,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "maxBytesRewrittenPerCall": {
                      "type": "int64",
                      "id": 15,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "copySourceEncryptionAlgorithm": {
                      "type": "string",
                      "id": 16,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "copySourceEncryptionKeyBytes": {
                      "type": "bytes",
                      "id": 21,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "copySourceEncryptionKeySha256Bytes": {
                      "type": "bytes",
                      "id": 22,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 19,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "objectChecksums": {
                      "type": "ObjectChecksums",
                      "id": 29,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "RewriteResponse": {
                  "fields": {
                    "totalBytesRewritten": {
                      "type": "int64",
                      "id": 1
                    },
                    "objectSize": {
                      "type": "int64",
                      "id": 2
                    },
                    "done": {
                      "type": "bool",
                      "id": 3
                    },
                    "rewriteToken": {
                      "type": "string",
                      "id": 4
                    },
                    "resource": {
                      "type": "StorageObject",
                      "id": 5
                    }
                  }
                },
                "MoveObjectRequest": {
                  "oneofs": {
                    "_ifSourceGenerationMatch": {
                      "oneof": [
                        "ifSourceGenerationMatch"
                      ]
                    },
                    "_ifSourceGenerationNotMatch": {
                      "oneof": [
                        "ifSourceGenerationNotMatch"
                      ]
                    },
                    "_ifSourceMetagenerationMatch": {
                      "oneof": [
                        "ifSourceMetagenerationMatch"
                      ]
                    },
                    "_ifSourceMetagenerationNotMatch": {
                      "oneof": [
                        "ifSourceMetagenerationNotMatch"
                      ]
                    },
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    }
                  },
                  "fields": {
                    "bucket": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "sourceObject": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "destinationObject": {
                      "type": "string",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "ifSourceGenerationMatch": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    },
                    "ifSourceGenerationNotMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    },
                    "ifSourceMetagenerationMatch": {
                      "type": "int64",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    },
                    "ifSourceMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 11,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "StartResumableWriteRequest": {
                  "fields": {
                    "writeObjectSpec": {
                      "type": "WriteObjectSpec",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "objectChecksums": {
                      "type": "ObjectChecksums",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "StartResumableWriteResponse": {
                  "fields": {
                    "uploadId": {
                      "type": "string",
                      "id": 1
                    }
                  }
                },
                "UpdateObjectRequest": {
                  "oneofs": {
                    "_ifGenerationMatch": {
                      "oneof": [
                        "ifGenerationMatch"
                      ]
                    },
                    "_ifGenerationNotMatch": {
                      "oneof": [
                        "ifGenerationNotMatch"
                      ]
                    },
                    "_ifMetagenerationMatch": {
                      "oneof": [
                        "ifMetagenerationMatch"
                      ]
                    },
                    "_ifMetagenerationNotMatch": {
                      "oneof": [
                        "ifMetagenerationNotMatch"
                      ]
                    }
                  },
                  "fields": {
                    "object": {
                      "type": "StorageObject",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "ifGenerationMatch": {
                      "type": "int64",
                      "id": 2,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifGenerationNotMatch": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationMatch": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "ifMetagenerationNotMatch": {
                      "type": "int64",
                      "id": 5,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "predefinedAcl": {
                      "type": "string",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "updateMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "commonObjectRequestParams": {
                      "type": "CommonObjectRequestParams",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "overrideUnlockedRetention": {
                      "type": "bool",
                      "id": 11,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "CommonObjectRequestParams": {
                  "fields": {
                    "encryptionAlgorithm": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "encryptionKeyBytes": {
                      "type": "bytes",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "encryptionKeySha256Bytes": {
                      "type": "bytes",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "ServiceConstants": {
                  "fields": {},
                  "nested": {
                    "Values": {
                      "options": {
                        "allow_alias": true
                      },
                      "values": {
                        "VALUES_UNSPECIFIED": 0,
                        "MAX_READ_CHUNK_BYTES": 2097152,
                        "MAX_WRITE_CHUNK_BYTES": 2097152,
                        "MAX_OBJECT_SIZE_MB": 5242880,
                        "MAX_CUSTOM_METADATA_FIELD_NAME_BYTES": 1024,
                        "MAX_CUSTOM_METADATA_FIELD_VALUE_BYTES": 4096,
                        "MAX_CUSTOM_METADATA_TOTAL_SIZE_BYTES": 8192,
                        "MAX_BUCKET_METADATA_TOTAL_SIZE_BYTES": 20480,
                        "MAX_NOTIFICATION_CONFIGS_PER_BUCKET": 100,
                        "MAX_LIFECYCLE_RULES_PER_BUCKET": 100,
                        "MAX_NOTIFICATION_CUSTOM_ATTRIBUTES": 5,
                        "MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_KEY_LENGTH": 256,
                        "MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_VALUE_LENGTH": 1024,
                        "MAX_LABELS_ENTRIES_COUNT": 64,
                        "MAX_LABELS_KEY_VALUE_LENGTH": 63,
                        "MAX_LABELS_KEY_VALUE_BYTES": 128,
                        "MAX_OBJECT_IDS_PER_DELETE_OBJECTS_REQUEST": 1000,
                        "SPLIT_TOKEN_MAX_VALID_DAYS": 14
                      }
                    }
                  }
                },
                "Bucket": {
                  "options": {
                    "(google.api.resource).type": "storage.googleapis.com/Bucket",
                    "(google.api.resource).pattern": "projects/{project}/buckets/{bucket}",
                    "(google.api.resource).plural": "buckets",
                    "(google.api.resource).singular": "bucket"
                  },
                  "oneofs": {
                    "_ipFilter": {
                      "oneof": [
                        "ipFilter"
                      ]
                    }
                  },
                  "fields": {
                    "name": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "IDENTIFIER"
                      }
                    },
                    "bucketId": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "etag": {
                      "type": "string",
                      "id": 29
                    },
                    "project": {
                      "type": "string",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "IMMUTABLE",
                        "(google.api.resource_reference).type": "cloudresourcemanager.googleapis.com/Project"
                      }
                    },
                    "metageneration": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "location": {
                      "type": "string",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "IMMUTABLE"
                      }
                    },
                    "locationType": {
                      "type": "string",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "storageClass": {
                      "type": "string",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "rpo": {
                      "type": "string",
                      "id": 27,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "acl": {
                      "rule": "repeated",
                      "type": "BucketAccessControl",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "defaultObjectAcl": {
                      "rule": "repeated",
                      "type": "ObjectAccessControl",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "lifecycle": {
                      "type": "Lifecycle",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "createTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 11,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "cors": {
                      "rule": "repeated",
                      "type": "Cors",
                      "id": 12,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "updateTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 13,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "defaultEventBasedHold": {
                      "type": "bool",
                      "id": 14,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "labels": {
                      "keyType": "string",
                      "type": "string",
                      "id": 15,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "website": {
                      "type": "Website",
                      "id": 16,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "versioning": {
                      "type": "Versioning",
                      "id": 17,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "logging": {
                      "type": "Logging",
                      "id": 18,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "owner": {
                      "type": "Owner",
                      "id": 19,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "encryption": {
                      "type": "Encryption",
                      "id": 20,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "billing": {
                      "type": "Billing",
                      "id": 21,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "retentionPolicy": {
                      "type": "RetentionPolicy",
                      "id": 22,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "iamConfig": {
                      "type": "IamConfig",
                      "id": 23,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "satisfiesPzs": {
                      "type": "bool",
                      "id": 25,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "customPlacementConfig": {
                      "type": "CustomPlacementConfig",
                      "id": 26,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "autoclass": {
                      "type": "Autoclass",
                      "id": 28,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "hierarchicalNamespace": {
                      "type": "HierarchicalNamespace",
                      "id": 32,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "softDeletePolicy": {
                      "type": "SoftDeletePolicy",
                      "id": 31,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "objectRetention": {
                      "type": "ObjectRetention",
                      "id": 33,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "ipFilter": {
                      "type": "IpFilter",
                      "id": 38,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "proto3_optional": true
                      }
                    }
                  },
                  "nested": {
                    "Billing": {
                      "fields": {
                        "requesterPays": {
                          "type": "bool",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "Cors": {
                      "fields": {
                        "origin": {
                          "rule": "repeated",
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "method": {
                          "rule": "repeated",
                          "type": "string",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "responseHeader": {
                          "rule": "repeated",
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "maxAgeSeconds": {
                          "type": "int32",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "Encryption": {
                      "oneofs": {
                        "_googleManagedEncryptionEnforcementConfig": {
                          "oneof": [
                            "googleManagedEncryptionEnforcementConfig"
                          ]
                        },
                        "_customerManagedEncryptionEnforcementConfig": {
                          "oneof": [
                            "customerManagedEncryptionEnforcementConfig"
                          ]
                        },
                        "_customerSuppliedEncryptionEnforcementConfig": {
                          "oneof": [
                            "customerSuppliedEncryptionEnforcementConfig"
                          ]
                        }
                      },
                      "fields": {
                        "defaultKmsKey": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL",
                            "(google.api.resource_reference).type": "cloudkms.googleapis.com/CryptoKey"
                          }
                        },
                        "googleManagedEncryptionEnforcementConfig": {
                          "type": "GoogleManagedEncryptionEnforcementConfig",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL",
                            "proto3_optional": true
                          }
                        },
                        "customerManagedEncryptionEnforcementConfig": {
                          "type": "CustomerManagedEncryptionEnforcementConfig",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL",
                            "proto3_optional": true
                          }
                        },
                        "customerSuppliedEncryptionEnforcementConfig": {
                          "type": "CustomerSuppliedEncryptionEnforcementConfig",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL",
                            "proto3_optional": true
                          }
                        }
                      },
                      "nested": {
                        "GoogleManagedEncryptionEnforcementConfig": {
                          "oneofs": {
                            "_restrictionMode": {
                              "oneof": [
                                "restrictionMode"
                              ]
                            },
                            "_effectiveTime": {
                              "oneof": [
                                "effectiveTime"
                              ]
                            }
                          },
                          "fields": {
                            "restrictionMode": {
                              "type": "string",
                              "id": 3,
                              "options": {
                                "proto3_optional": true
                              }
                            },
                            "effectiveTime": {
                              "type": "google.protobuf.Timestamp",
                              "id": 2,
                              "options": {
                                "proto3_optional": true
                              }
                            }
                          }
                        },
                        "CustomerManagedEncryptionEnforcementConfig": {
                          "oneofs": {
                            "_restrictionMode": {
                              "oneof": [
                                "restrictionMode"
                              ]
                            },
                            "_effectiveTime": {
                              "oneof": [
                                "effectiveTime"
                              ]
                            }
                          },
                          "fields": {
                            "restrictionMode": {
                              "type": "string",
                              "id": 3,
                              "options": {
                                "proto3_optional": true
                              }
                            },
                            "effectiveTime": {
                              "type": "google.protobuf.Timestamp",
                              "id": 2,
                              "options": {
                                "proto3_optional": true
                              }
                            }
                          }
                        },
                        "CustomerSuppliedEncryptionEnforcementConfig": {
                          "oneofs": {
                            "_restrictionMode": {
                              "oneof": [
                                "restrictionMode"
                              ]
                            },
                            "_effectiveTime": {
                              "oneof": [
                                "effectiveTime"
                              ]
                            }
                          },
                          "fields": {
                            "restrictionMode": {
                              "type": "string",
                              "id": 3,
                              "options": {
                                "proto3_optional": true
                              }
                            },
                            "effectiveTime": {
                              "type": "google.protobuf.Timestamp",
                              "id": 2,
                              "options": {
                                "proto3_optional": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "IamConfig": {
                      "fields": {
                        "uniformBucketLevelAccess": {
                          "type": "UniformBucketLevelAccess",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "publicAccessPrevention": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      },
                      "nested": {
                        "UniformBucketLevelAccess": {
                          "fields": {
                            "enabled": {
                              "type": "bool",
                              "id": 1,
                              "options": {
                                "(google.api.field_behavior)": "OPTIONAL"
                              }
                            },
                            "lockTime": {
                              "type": "google.protobuf.Timestamp",
                              "id": 2,
                              "options": {
                                "(google.api.field_behavior)": "OPTIONAL"
                              }
                            }
                          }
                        }
                      }
                    },
                    "Lifecycle": {
                      "fields": {
                        "rule": {
                          "rule": "repeated",
                          "type": "Rule",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      },
                      "nested": {
                        "Rule": {
                          "fields": {
                            "action": {
                              "type": "Action",
                              "id": 1,
                              "options": {
                                "(google.api.field_behavior)": "OPTIONAL"
                              }
                            },
                            "condition": {
                              "type": "Condition",
                              "id": 2,
                              "options": {
                                "(google.api.field_behavior)": "OPTIONAL"
                              }
                            }
                          },
                          "nested": {
                            "Action": {
                              "fields": {
                                "type": {
                                  "type": "string",
                                  "id": 1,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                },
                                "storageClass": {
                                  "type": "string",
                                  "id": 2,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                }
                              }
                            },
                            "Condition": {
                              "oneofs": {
                                "_ageDays": {
                                  "oneof": [
                                    "ageDays"
                                  ]
                                },
                                "_isLive": {
                                  "oneof": [
                                    "isLive"
                                  ]
                                },
                                "_numNewerVersions": {
                                  "oneof": [
                                    "numNewerVersions"
                                  ]
                                },
                                "_daysSinceCustomTime": {
                                  "oneof": [
                                    "daysSinceCustomTime"
                                  ]
                                },
                                "_daysSinceNoncurrentTime": {
                                  "oneof": [
                                    "daysSinceNoncurrentTime"
                                  ]
                                }
                              },
                              "fields": {
                                "ageDays": {
                                  "type": "int32",
                                  "id": 1,
                                  "options": {
                                    "proto3_optional": true
                                  }
                                },
                                "createdBefore": {
                                  "type": "google.type.Date",
                                  "id": 2,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                },
                                "isLive": {
                                  "type": "bool",
                                  "id": 3,
                                  "options": {
                                    "proto3_optional": true
                                  }
                                },
                                "numNewerVersions": {
                                  "type": "int32",
                                  "id": 4,
                                  "options": {
                                    "proto3_optional": true
                                  }
                                },
                                "matchesStorageClass": {
                                  "rule": "repeated",
                                  "type": "string",
                                  "id": 5,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                },
                                "daysSinceCustomTime": {
                                  "type": "int32",
                                  "id": 7,
                                  "options": {
                                    "proto3_optional": true
                                  }
                                },
                                "customTimeBefore": {
                                  "type": "google.type.Date",
                                  "id": 8,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                },
                                "daysSinceNoncurrentTime": {
                                  "type": "int32",
                                  "id": 9,
                                  "options": {
                                    "proto3_optional": true
                                  }
                                },
                                "noncurrentTimeBefore": {
                                  "type": "google.type.Date",
                                  "id": 10,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                },
                                "matchesPrefix": {
                                  "rule": "repeated",
                                  "type": "string",
                                  "id": 11,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                },
                                "matchesSuffix": {
                                  "rule": "repeated",
                                  "type": "string",
                                  "id": 12,
                                  "options": {
                                    "(google.api.field_behavior)": "OPTIONAL"
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "Logging": {
                      "fields": {
                        "logBucket": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "logObjectPrefix": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "ObjectRetention": {
                      "fields": {
                        "enabled": {
                          "type": "bool",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        }
                      }
                    },
                    "RetentionPolicy": {
                      "fields": {
                        "effectiveTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "isLocked": {
                          "type": "bool",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "retentionDuration": {
                          "type": "google.protobuf.Duration",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "SoftDeletePolicy": {
                      "oneofs": {
                        "_retentionDuration": {
                          "oneof": [
                            "retentionDuration"
                          ]
                        },
                        "_effectiveTime": {
                          "oneof": [
                            "effectiveTime"
                          ]
                        }
                      },
                      "fields": {
                        "retentionDuration": {
                          "type": "google.protobuf.Duration",
                          "id": 1,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "effectiveTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 2,
                          "options": {
                            "proto3_optional": true
                          }
                        }
                      }
                    },
                    "Versioning": {
                      "fields": {
                        "enabled": {
                          "type": "bool",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "Website": {
                      "fields": {
                        "mainPageSuffix": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "notFoundPage": {
                          "type": "string",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "CustomPlacementConfig": {
                      "fields": {
                        "dataLocations": {
                          "rule": "repeated",
                          "type": "string",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    },
                    "Autoclass": {
                      "oneofs": {
                        "_terminalStorageClass": {
                          "oneof": [
                            "terminalStorageClass"
                          ]
                        },
                        "_terminalStorageClassUpdateTime": {
                          "oneof": [
                            "terminalStorageClassUpdateTime"
                          ]
                        }
                      },
                      "fields": {
                        "enabled": {
                          "type": "bool",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "toggleTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY"
                          }
                        },
                        "terminalStorageClass": {
                          "type": "string",
                          "id": 3,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "terminalStorageClassUpdateTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OUTPUT_ONLY",
                            "proto3_optional": true
                          }
                        }
                      }
                    },
                    "IpFilter": {
                      "oneofs": {
                        "_mode": {
                          "oneof": [
                            "mode"
                          ]
                        },
                        "_publicNetworkSource": {
                          "oneof": [
                            "publicNetworkSource"
                          ]
                        },
                        "_allowAllServiceAgentAccess": {
                          "oneof": [
                            "allowAllServiceAgentAccess"
                          ]
                        }
                      },
                      "fields": {
                        "mode": {
                          "type": "string",
                          "id": 1,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "publicNetworkSource": {
                          "type": "PublicNetworkSource",
                          "id": 2,
                          "options": {
                            "proto3_optional": true
                          }
                        },
                        "vpcNetworkSources": {
                          "rule": "repeated",
                          "type": "VpcNetworkSource",
                          "id": 3,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "allowCrossOrgVpcs": {
                          "type": "bool",
                          "id": 4,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "allowAllServiceAgentAccess": {
                          "type": "bool",
                          "id": 5,
                          "options": {
                            "proto3_optional": true
                          }
                        }
                      },
                      "nested": {
                        "PublicNetworkSource": {
                          "fields": {
                            "allowedIpCidrRanges": {
                              "rule": "repeated",
                              "type": "string",
                              "id": 1,
                              "options": {
                                "(google.api.field_behavior)": "OPTIONAL"
                              }
                            }
                          }
                        },
                        "VpcNetworkSource": {
                          "oneofs": {
                            "_network": {
                              "oneof": [
                                "network"
                              ]
                            }
                          },
                          "fields": {
                            "network": {
                              "type": "string",
                              "id": 1,
                              "options": {
                                "proto3_optional": true
                              }
                            },
                            "allowedIpCidrRanges": {
                              "rule": "repeated",
                              "type": "string",
                              "id": 2,
                              "options": {
                                "(google.api.field_behavior)": "OPTIONAL"
                              }
                            }
                          }
                        }
                      }
                    },
                    "HierarchicalNamespace": {
                      "fields": {
                        "enabled": {
                          "type": "bool",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      }
                    }
                  }
                },
                "BucketAccessControl": {
                  "fields": {
                    "role": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "id": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "entity": {
                      "type": "string",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "entityAlt": {
                      "type": "string",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "entityId": {
                      "type": "string",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "etag": {
                      "type": "string",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "email": {
                      "type": "string",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "domain": {
                      "type": "string",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "projectTeam": {
                      "type": "ProjectTeam",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "ChecksummedData": {
                  "oneofs": {
                    "_crc32c": {
                      "oneof": [
                        "crc32c"
                      ]
                    }
                  },
                  "fields": {
                    "content": {
                      "type": "bytes",
                      "id": 1,
                      "options": {
                        "ctype": "CORD",
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "crc32c": {
                      "type": "fixed32",
                      "id": 2,
                      "options": {
                        "proto3_optional": true
                      }
                    }
                  }
                },
                "ObjectChecksums": {
                  "oneofs": {
                    "_crc32c": {
                      "oneof": [
                        "crc32c"
                      ]
                    }
                  },
                  "fields": {
                    "crc32c": {
                      "type": "fixed32",
                      "id": 1,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "md5Hash": {
                      "type": "bytes",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "ObjectCustomContextPayload": {
                  "fields": {
                    "value": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "createTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "updateTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    }
                  }
                },
                "ObjectContexts": {
                  "fields": {
                    "custom": {
                      "keyType": "string",
                      "type": "ObjectCustomContextPayload",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "CustomerEncryption": {
                  "fields": {
                    "encryptionAlgorithm": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "keySha256Bytes": {
                      "type": "bytes",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "StorageObject": {
                  "oneofs": {
                    "_restoreToken": {
                      "oneof": [
                        "restoreToken"
                      ]
                    },
                    "_eventBasedHold": {
                      "oneof": [
                        "eventBasedHold"
                      ]
                    },
                    "_softDeleteTime": {
                      "oneof": [
                        "softDeleteTime"
                      ]
                    },
                    "_hardDeleteTime": {
                      "oneof": [
                        "hardDeleteTime"
                      ]
                    }
                  },
                  "fields": {
                    "name": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "IMMUTABLE"
                      }
                    },
                    "bucket": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "IMMUTABLE",
                        "(google.api.resource_reference).type": "storage.googleapis.com/Bucket"
                      }
                    },
                    "etag": {
                      "type": "string",
                      "id": 27,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "generation": {
                      "type": "int64",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "IMMUTABLE"
                      }
                    },
                    "restoreToken": {
                      "type": "string",
                      "id": 35,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY",
                        "proto3_optional": true
                      }
                    },
                    "metageneration": {
                      "type": "int64",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "storageClass": {
                      "type": "string",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "size": {
                      "type": "int64",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "contentEncoding": {
                      "type": "string",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "contentDisposition": {
                      "type": "string",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "cacheControl": {
                      "type": "string",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "acl": {
                      "rule": "repeated",
                      "type": "ObjectAccessControl",
                      "id": 10,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "contentLanguage": {
                      "type": "string",
                      "id": 11,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "deleteTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 12,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "finalizeTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 36,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "contentType": {
                      "type": "string",
                      "id": 13,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "createTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 14,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "componentCount": {
                      "type": "int32",
                      "id": 15,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "checksums": {
                      "type": "ObjectChecksums",
                      "id": 16,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "updateTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 17,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "kmsKey": {
                      "type": "string",
                      "id": 18,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL",
                        "(google.api.resource_reference).type": "cloudkms.googleapis.com/CryptoKey"
                      }
                    },
                    "updateStorageClassTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 19,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "temporaryHold": {
                      "type": "bool",
                      "id": 20,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "retentionExpireTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 21,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "metadata": {
                      "keyType": "string",
                      "type": "string",
                      "id": 22,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "contexts": {
                      "type": "ObjectContexts",
                      "id": 38,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "eventBasedHold": {
                      "type": "bool",
                      "id": 23,
                      "options": {
                        "proto3_optional": true
                      }
                    },
                    "owner": {
                      "type": "Owner",
                      "id": 24,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "customerEncryption": {
                      "type": "CustomerEncryption",
                      "id": 25,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "customTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 26,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "softDeleteTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 28,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY",
                        "proto3_optional": true
                      }
                    },
                    "hardDeleteTime": {
                      "type": "google.protobuf.Timestamp",
                      "id": 29,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY",
                        "proto3_optional": true
                      }
                    },
                    "retention": {
                      "type": "Retention",
                      "id": 30,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  },
                  "nested": {
                    "Retention": {
                      "fields": {
                        "mode": {
                          "type": "Mode",
                          "id": 1,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        },
                        "retainUntilTime": {
                          "type": "google.protobuf.Timestamp",
                          "id": 2,
                          "options": {
                            "(google.api.field_behavior)": "OPTIONAL"
                          }
                        }
                      },
                      "nested": {
                        "Mode": {
                          "values": {
                            "MODE_UNSPECIFIED": 0,
                            "UNLOCKED": 1,
                            "LOCKED": 2
                          }
                        }
                      }
                    }
                  }
                },
                "ObjectAccessControl": {
                  "fields": {
                    "role": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "id": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "entity": {
                      "type": "string",
                      "id": 3,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "entityAlt": {
                      "type": "string",
                      "id": 9,
                      "options": {
                        "(google.api.field_behavior)": "OUTPUT_ONLY"
                      }
                    },
                    "entityId": {
                      "type": "string",
                      "id": 4,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "etag": {
                      "type": "string",
                      "id": 8,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "email": {
                      "type": "string",
                      "id": 5,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "domain": {
                      "type": "string",
                      "id": 6,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "projectTeam": {
                      "type": "ProjectTeam",
                      "id": 7,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "ListObjectsResponse": {
                  "fields": {
                    "objects": {
                      "rule": "repeated",
                      "type": "StorageObject",
                      "id": 1
                    },
                    "prefixes": {
                      "rule": "repeated",
                      "type": "string",
                      "id": 2
                    },
                    "nextPageToken": {
                      "type": "string",
                      "id": 3
                    }
                  }
                },
                "ProjectTeam": {
                  "fields": {
                    "projectNumber": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "team": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "Owner": {
                  "fields": {
                    "entity": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    },
                    "entityId": {
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "OPTIONAL"
                      }
                    }
                  }
                },
                "ContentRange": {
                  "fields": {
                    "start": {
                      "type": "int64",
                      "id": 1
                    },
                    "end": {
                      "type": "int64",
                      "id": 2
                    },
                    "completeLength": {
                      "type": "int64",
                      "id": 3
                    }
                  }
                }
              }
            }
          }
        },
        "api": {
          "options": {
            "go_package": "google.golang.org/genproto/googleapis/api/annotations;annotations",
            "java_multiple_files": true,
            "java_outer_classname": "RoutingProto",
            "java_package": "com.google.api",
            "objc_class_prefix": "GAPI"
          },
          "nested": {
            "http": {
              "type": "HttpRule",
              "id": 72295728,
              "extend": "google.protobuf.MethodOptions"
            },
            "Http": {
              "fields": {
                "rules": {
                  "rule": "repeated",
                  "type": "HttpRule",
                  "id": 1
                },
                "fullyDecodeReservedExpansion": {
                  "type": "bool",
                  "id": 2
                }
              }
            },
            "HttpRule": {
              "oneofs": {
                "pattern": {
                  "oneof": [
                    "get",
                    "put",
                    "post",
                    "delete",
                    "patch",
                    "custom"
                  ]
                }
              },
              "fields": {
                "selector": {
                  "type": "string",
                  "id": 1
                },
                "get": {
                  "type": "string",
                  "id": 2
                },
                "put": {
                  "type": "string",
                  "id": 3
                },
                "post": {
                  "type": "string",
                  "id": 4
                },
                "delete": {
                  "type": "string",
                  "id": 5
                },
                "patch": {
                  "type": "string",
                  "id": 6
                },
                "custom": {
                  "type": "CustomHttpPattern",
                  "id": 8
                },
                "body": {
                  "type": "string",
                  "id": 7
                },
                "responseBody": {
                  "type": "string",
                  "id": 12
                },
                "additionalBindings": {
                  "rule": "repeated",
                  "type": "HttpRule",
                  "id": 11
                }
              }
            },
            "CustomHttpPattern": {
              "fields": {
                "kind": {
                  "type": "string",
                  "id": 1
                },
                "path": {
                  "type": "string",
                  "id": 2
                }
              }
            },
            "methodSignature": {
              "rule": "repeated",
              "type": "string",
              "id": 1051,
              "extend": "google.protobuf.MethodOptions"
            },
            "defaultHost": {
              "type": "string",
              "id": 1049,
              "extend": "google.protobuf.ServiceOptions"
            },
            "oauthScopes": {
              "type": "string",
              "id": 1050,
              "extend": "google.protobuf.ServiceOptions"
            },
            "apiVersion": {
              "type": "string",
              "id": 525000001,
              "extend": "google.protobuf.ServiceOptions"
            },
            "CommonLanguageSettings": {
              "fields": {
                "referenceDocsUri": {
                  "type": "string",
                  "id": 1,
                  "options": {
                    "deprecated": true
                  }
                },
                "destinations": {
                  "rule": "repeated",
                  "type": "ClientLibraryDestination",
                  "id": 2
                },
                "selectiveGapicGeneration": {
                  "type": "SelectiveGapicGeneration",
                  "id": 3
                }
              }
            },
            "ClientLibrarySettings": {
              "fields": {
                "version": {
                  "type": "string",
                  "id": 1
                },
                "launchStage": {
                  "type": "LaunchStage",
                  "id": 2
                },
                "restNumericEnums": {
                  "type": "bool",
                  "id": 3
                },
                "javaSettings": {
                  "type": "JavaSettings",
                  "id": 21
                },
                "cppSettings": {
                  "type": "CppSettings",
                  "id": 22
                },
                "phpSettings": {
                  "type": "PhpSettings",
                  "id": 23
                },
                "pythonSettings": {
                  "type": "PythonSettings",
                  "id": 24
                },
                "nodeSettings": {
                  "type": "NodeSettings",
                  "id": 25
                },
                "dotnetSettings": {
                  "type": "DotnetSettings",
                  "id": 26
                },
                "rubySettings": {
                  "type": "RubySettings",
                  "id": 27
                },
                "goSettings": {
                  "type": "GoSettings",
                  "id": 28
                }
              }
            },
            "Publishing": {
              "fields": {
                "methodSettings": {
                  "rule": "repeated",
                  "type": "MethodSettings",
                  "id": 2
                },
                "newIssueUri": {
                  "type": "string",
                  "id": 101
                },
                "documentationUri": {
                  "type": "string",
                  "id": 102
                },
                "apiShortName": {
                  "type": "string",
                  "id": 103
                },
                "githubLabel": {
                  "type": "string",
                  "id": 104
                },
                "codeownerGithubTeams": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 105
                },
                "docTagPrefix": {
                  "type": "string",
                  "id": 106
                },
                "organization": {
                  "type": "ClientLibraryOrganization",
                  "id": 107
                },
                "librarySettings": {
                  "rule": "repeated",
                  "type": "ClientLibrarySettings",
                  "id": 109
                },
                "protoReferenceDocumentationUri": {
                  "type": "string",
                  "id": 110
                },
                "restReferenceDocumentationUri": {
                  "type": "string",
                  "id": 111
                }
              }
            },
            "JavaSettings": {
              "fields": {
                "libraryPackage": {
                  "type": "string",
                  "id": 1
                },
                "serviceClassNames": {
                  "keyType": "string",
                  "type": "string",
                  "id": 2
                },
                "common": {
                  "type": "CommonLanguageSettings",
                  "id": 3
                }
              }
            },
            "CppSettings": {
              "fields": {
                "common": {
                  "type": "CommonLanguageSettings",
                  "id": 1
                }
              }
            },
            "PhpSettings": {
              "fields": {
                "common": {
                  "type": "CommonLanguageSettings",
                  "id": 1
                }
              }
            },
            "PythonSettings": {
              "fields": {
                "common": {
                  "type": "CommonLanguageSettings",
                  "id": 1
                },
                "experimentalFeatures": {
                  "type": "ExperimentalFeatures",
                  "id": 2
                }
              },
              "nested": {
                "ExperimentalFeatures": {
                  "fields": {
                    "restAsyncIoEnabled": {
                      "type": "bool",
                      "id": 1
                    },
                    "protobufPythonicTypesEnabled": {
                      "type": "bool",
                      "id": 2
                    },
                    "unversionedPackageDisabled": {
                      "type": "bool",
                      "id": 3
                    }
                  }
                }
              }
            },
            "NodeSettings": {
              "fields": {
                "common": {
                  "type": "CommonLanguageSettings",
                  "id": 1
                }
              }
            },
            "DotnetSettings": {
              "fields": {
                "common": {
                  "type": "CommonLanguageSettings",
                  "id": 1
                },
                "renamedServices": {
                  "keyType": "string",
                  "type": "string",
                  "id": 2
                },
                "renamedResources": {
                  "keyType": "string",
                  "type": "string",
                  "id": 3
                },
                "ignoredResources": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 4
                },
                "forcedNamespaceAliases": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 5
                },
                "handwrittenSignatures": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 6
                }
              }
            },
            "RubySettings": {
              "fields": {
                "common": {
                  "type": "CommonLanguageSettings",
                  "id": 1
                }
              }
            },
            "GoSettings": {
              "fields": {
                "common": {
                  "type": "CommonLanguageSettings",
                  "id": 1
                },
                "renamedServices": {
                  "keyType": "string",
                  "type": "string",
                  "id": 2
                }
              }
            },
            "MethodSettings": {
              "fields": {
                "selector": {
                  "type": "string",
                  "id": 1
                },
                "longRunning": {
                  "type": "LongRunning",
                  "id": 2
                },
                "autoPopulatedFields": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 3
                }
              },
              "nested": {
                "LongRunning": {
                  "fields": {
                    "initialPollDelay": {
                      "type": "google.protobuf.Duration",
                      "id": 1
                    },
                    "pollDelayMultiplier": {
                      "type": "float",
                      "id": 2
                    },
                    "maxPollDelay": {
                      "type": "google.protobuf.Duration",
                      "id": 3
                    },
                    "totalPollTimeout": {
                      "type": "google.protobuf.Duration",
                      "id": 4
                    }
                  }
                }
              }
            },
            "ClientLibraryOrganization": {
              "values": {
                "CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED": 0,
                "CLOUD": 1,
                "ADS": 2,
                "PHOTOS": 3,
                "STREET_VIEW": 4,
                "SHOPPING": 5,
                "GEO": 6,
                "GENERATIVE_AI": 7
              }
            },
            "ClientLibraryDestination": {
              "values": {
                "CLIENT_LIBRARY_DESTINATION_UNSPECIFIED": 0,
                "GITHUB": 10,
                "PACKAGE_MANAGER": 20
              }
            },
            "SelectiveGapicGeneration": {
              "fields": {
                "methods": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 1
                },
                "generateOmittedAsInternal": {
                  "type": "bool",
                  "id": 2
                }
              }
            },
            "LaunchStage": {
              "values": {
                "LAUNCH_STAGE_UNSPECIFIED": 0,
                "UNIMPLEMENTED": 6,
                "PRELAUNCH": 7,
                "EARLY_ACCESS": 1,
                "ALPHA": 2,
                "BETA": 3,
                "GA": 4,
                "DEPRECATED": 5
              }
            },
            "fieldBehavior": {
              "rule": "repeated",
              "type": "google.api.FieldBehavior",
              "id": 1052,
              "extend": "google.protobuf.FieldOptions",
              "options": {
                "packed": false
              }
            },
            "FieldBehavior": {
              "values": {
                "FIELD_BEHAVIOR_UNSPECIFIED": 0,
                "OPTIONAL": 1,
                "REQUIRED": 2,
                "OUTPUT_ONLY": 3,
                "INPUT_ONLY": 4,
                "IMMUTABLE": 5,
                "UNORDERED_LIST": 6,
                "NON_EMPTY_DEFAULT": 7,
                "IDENTIFIER": 8
              }
            },
            "fieldInfo": {
              "type": "google.api.FieldInfo",
              "id": 291403980,
              "extend": "google.protobuf.FieldOptions"
            },
            "FieldInfo": {
              "fields": {
                "format": {
                  "type": "Format",
                  "id": 1
                },
                "referencedTypes": {
                  "rule": "repeated",
                  "type": "TypeReference",
                  "id": 2
                }
              },
              "nested": {
                "Format": {
                  "values": {
                    "FORMAT_UNSPECIFIED": 0,
                    "UUID4": 1,
                    "IPV4": 2,
                    "IPV6": 3,
                    "IPV4_OR_IPV6": 4
                  }
                }
              }
            },
            "TypeReference": {
              "fields": {
                "typeName": {
                  "type": "string",
                  "id": 1
                }
              }
            },
            "resourceReference": {
              "type": "google.api.ResourceReference",
              "id": 1055,
              "extend": "google.protobuf.FieldOptions"
            },
            "resourceDefinition": {
              "rule": "repeated",
              "type": "google.api.ResourceDescriptor",
              "id": 1053,
              "extend": "google.protobuf.FileOptions"
            },
            "resource": {
              "type": "google.api.ResourceDescriptor",
              "id": 1053,
              "extend": "google.protobuf.MessageOptions"
            },
            "ResourceDescriptor": {
              "fields": {
                "type": {
                  "type": "string",
                  "id": 1
                },
                "pattern": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 2
                },
                "nameField": {
                  "type": "string",
                  "id": 3
                },
                "history": {
                  "type": "History",
                  "id": 4
                },
                "plural": {
                  "type": "string",
                  "id": 5
                },
                "singular": {
                  "type": "string",
                  "id": 6
                },
                "style": {
                  "rule": "repeated",
                  "type": "Style",
                  "id": 10
                }
              },
              "nested": {
                "History": {
                  "values": {
                    "HISTORY_UNSPECIFIED": 0,
                    "ORIGINALLY_SINGLE_PATTERN": 1,
                    "FUTURE_MULTI_PATTERN": 2
                  }
                },
                "Style": {
                  "values": {
                    "STYLE_UNSPECIFIED": 0,
                    "DECLARATIVE_FRIENDLY": 1
                  }
                }
              }
            },
            "ResourceReference": {
              "fields": {
                "type": {
                  "type": "string",
                  "id": 1
                },
                "childType": {
                  "type": "string",
                  "id": 2
                }
              }
            },
            "routing": {
              "type": "google.api.RoutingRule",
              "id": 72295729,
              "extend": "google.protobuf.MethodOptions"
            },
            "RoutingRule": {
              "fields": {
                "routingParameters": {
                  "rule": "repeated",
                  "type": "RoutingParameter",
                  "id": 2
                }
              }
            },
            "RoutingParameter": {
              "fields": {
                "field": {
                  "type": "string",
                  "id": 1
                },
                "pathTemplate": {
                  "type": "string",
                  "id": 2
                }
              }
            }
          }
        },
        "protobuf": {
          "options": {
            "go_package": "google.golang.org/protobuf/types/descriptorpb",
            "java_package": "com.google.protobuf",
            "java_outer_classname": "DescriptorProtos",
            "csharp_namespace": "Google.Protobuf.Reflection",
            "objc_class_prefix": "GPB",
            "cc_enable_arenas": true,
            "optimize_for": "SPEED"
          },
          "nested": {
            "FileDescriptorSet": {
              "edition": "proto2",
              "fields": {
                "file": {
                  "rule": "repeated",
                  "type": "FileDescriptorProto",
                  "id": 1
                }
              },
              "extensions": [
                [
                  536000000,
                  536000000
                ]
              ]
            },
            "Edition": {
              "edition": "proto2",
              "values": {
                "EDITION_UNKNOWN": 0,
                "EDITION_LEGACY": 900,
                "EDITION_PROTO2": 998,
                "EDITION_PROTO3": 999,
                "EDITION_2023": 1000,
                "EDITION_2024": 1001,
                "EDITION_1_TEST_ONLY": 1,
                "EDITION_2_TEST_ONLY": 2,
                "EDITION_99997_TEST_ONLY": 99997,
                "EDITION_99998_TEST_ONLY": 99998,
                "EDITION_99999_TEST_ONLY": 99999,
                "EDITION_MAX": 2147483647
              }
            },
            "FileDescriptorProto": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "package": {
                  "type": "string",
                  "id": 2
                },
                "dependency": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 3
                },
                "publicDependency": {
                  "rule": "repeated",
                  "type": "int32",
                  "id": 10
                },
                "weakDependency": {
                  "rule": "repeated",
                  "type": "int32",
                  "id": 11
                },
                "optionDependency": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 15
                },
                "messageType": {
                  "rule": "repeated",
                  "type": "DescriptorProto",
                  "id": 4
                },
                "enumType": {
                  "rule": "repeated",
                  "type": "EnumDescriptorProto",
                  "id": 5
                },
                "service": {
                  "rule": "repeated",
                  "type": "ServiceDescriptorProto",
                  "id": 6
                },
                "extension": {
                  "rule": "repeated",
                  "type": "FieldDescriptorProto",
                  "id": 7
                },
                "options": {
                  "type": "FileOptions",
                  "id": 8
                },
                "sourceCodeInfo": {
                  "type": "SourceCodeInfo",
                  "id": 9
                },
                "syntax": {
                  "type": "string",
                  "id": 12
                },
                "edition": {
                  "type": "Edition",
                  "id": 14
                }
              }
            },
            "DescriptorProto": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "field": {
                  "rule": "repeated",
                  "type": "FieldDescriptorProto",
                  "id": 2
                },
                "extension": {
                  "rule": "repeated",
                  "type": "FieldDescriptorProto",
                  "id": 6
                },
                "nestedType": {
                  "rule": "repeated",
                  "type": "DescriptorProto",
                  "id": 3
                },
                "enumType": {
                  "rule": "repeated",
                  "type": "EnumDescriptorProto",
                  "id": 4
                },
                "extensionRange": {
                  "rule": "repeated",
                  "type": "ExtensionRange",
                  "id": 5
                },
                "oneofDecl": {
                  "rule": "repeated",
                  "type": "OneofDescriptorProto",
                  "id": 8
                },
                "options": {
                  "type": "MessageOptions",
                  "id": 7
                },
                "reservedRange": {
                  "rule": "repeated",
                  "type": "ReservedRange",
                  "id": 9
                },
                "reservedName": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 10
                },
                "visibility": {
                  "type": "SymbolVisibility",
                  "id": 11
                }
              },
              "nested": {
                "ExtensionRange": {
                  "fields": {
                    "start": {
                      "type": "int32",
                      "id": 1
                    },
                    "end": {
                      "type": "int32",
                      "id": 2
                    },
                    "options": {
                      "type": "ExtensionRangeOptions",
                      "id": 3
                    }
                  }
                },
                "ReservedRange": {
                  "fields": {
                    "start": {
                      "type": "int32",
                      "id": 1
                    },
                    "end": {
                      "type": "int32",
                      "id": 2
                    }
                  }
                }
              }
            },
            "ExtensionRangeOptions": {
              "edition": "proto2",
              "fields": {
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                },
                "declaration": {
                  "rule": "repeated",
                  "type": "Declaration",
                  "id": 2,
                  "options": {
                    "retention": "RETENTION_SOURCE"
                  }
                },
                "features": {
                  "type": "FeatureSet",
                  "id": 50
                },
                "verification": {
                  "type": "VerificationState",
                  "id": 3,
                  "options": {
                    "default": "UNVERIFIED",
                    "retention": "RETENTION_SOURCE"
                  }
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ],
              "nested": {
                "Declaration": {
                  "fields": {
                    "number": {
                      "type": "int32",
                      "id": 1
                    },
                    "fullName": {
                      "type": "string",
                      "id": 2
                    },
                    "type": {
                      "type": "string",
                      "id": 3
                    },
                    "reserved": {
                      "type": "bool",
                      "id": 5
                    },
                    "repeated": {
                      "type": "bool",
                      "id": 6
                    }
                  },
                  "reserved": [
                    [
                      4,
                      4
                    ]
                  ]
                },
                "VerificationState": {
                  "values": {
                    "DECLARATION": 0,
                    "UNVERIFIED": 1
                  }
                }
              }
            },
            "FieldDescriptorProto": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "number": {
                  "type": "int32",
                  "id": 3
                },
                "label": {
                  "type": "Label",
                  "id": 4
                },
                "type": {
                  "type": "Type",
                  "id": 5
                },
                "typeName": {
                  "type": "string",
                  "id": 6
                },
                "extendee": {
                  "type": "string",
                  "id": 2
                },
                "defaultValue": {
                  "type": "string",
                  "id": 7
                },
                "oneofIndex": {
                  "type": "int32",
                  "id": 9
                },
                "jsonName": {
                  "type": "string",
                  "id": 10
                },
                "options": {
                  "type": "FieldOptions",
                  "id": 8
                },
                "proto3Optional": {
                  "type": "bool",
                  "id": 17
                }
              },
              "nested": {
                "Type": {
                  "values": {
                    "TYPE_DOUBLE": 1,
                    "TYPE_FLOAT": 2,
                    "TYPE_INT64": 3,
                    "TYPE_UINT64": 4,
                    "TYPE_INT32": 5,
                    "TYPE_FIXED64": 6,
                    "TYPE_FIXED32": 7,
                    "TYPE_BOOL": 8,
                    "TYPE_STRING": 9,
                    "TYPE_GROUP": 10,
                    "TYPE_MESSAGE": 11,
                    "TYPE_BYTES": 12,
                    "TYPE_UINT32": 13,
                    "TYPE_ENUM": 14,
                    "TYPE_SFIXED32": 15,
                    "TYPE_SFIXED64": 16,
                    "TYPE_SINT32": 17,
                    "TYPE_SINT64": 18
                  }
                },
                "Label": {
                  "values": {
                    "LABEL_OPTIONAL": 1,
                    "LABEL_REPEATED": 3,
                    "LABEL_REQUIRED": 2
                  }
                }
              }
            },
            "OneofDescriptorProto": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "options": {
                  "type": "OneofOptions",
                  "id": 2
                }
              }
            },
            "EnumDescriptorProto": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "value": {
                  "rule": "repeated",
                  "type": "EnumValueDescriptorProto",
                  "id": 2
                },
                "options": {
                  "type": "EnumOptions",
                  "id": 3
                },
                "reservedRange": {
                  "rule": "repeated",
                  "type": "EnumReservedRange",
                  "id": 4
                },
                "reservedName": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 5
                },
                "visibility": {
                  "type": "SymbolVisibility",
                  "id": 6
                }
              },
              "nested": {
                "EnumReservedRange": {
                  "fields": {
                    "start": {
                      "type": "int32",
                      "id": 1
                    },
                    "end": {
                      "type": "int32",
                      "id": 2
                    }
                  }
                }
              }
            },
            "EnumValueDescriptorProto": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "number": {
                  "type": "int32",
                  "id": 2
                },
                "options": {
                  "type": "EnumValueOptions",
                  "id": 3
                }
              }
            },
            "ServiceDescriptorProto": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "method": {
                  "rule": "repeated",
                  "type": "MethodDescriptorProto",
                  "id": 2
                },
                "options": {
                  "type": "ServiceOptions",
                  "id": 3
                }
              },
              "reserved": [
                [
                  4,
                  4
                ],
                "stream"
              ]
            },
            "MethodDescriptorProto": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "inputType": {
                  "type": "string",
                  "id": 2
                },
                "outputType": {
                  "type": "string",
                  "id": 3
                },
                "options": {
                  "type": "MethodOptions",
                  "id": 4
                },
                "clientStreaming": {
                  "type": "bool",
                  "id": 5,
                  "options": {
                    "default": false
                  }
                },
                "serverStreaming": {
                  "type": "bool",
                  "id": 6,
                  "options": {
                    "default": false
                  }
                }
              }
            },
            "FileOptions": {
              "edition": "proto2",
              "fields": {
                "javaPackage": {
                  "type": "string",
                  "id": 1
                },
                "javaOuterClassname": {
                  "type": "string",
                  "id": 8
                },
                "javaMultipleFiles": {
                  "type": "bool",
                  "id": 10,
                  "options": {
                    "default": false
                  }
                },
                "javaGenerateEqualsAndHash": {
                  "type": "bool",
                  "id": 20,
                  "options": {
                    "deprecated": true
                  }
                },
                "javaStringCheckUtf8": {
                  "type": "bool",
                  "id": 27,
                  "options": {
                    "default": false
                  }
                },
                "optimizeFor": {
                  "type": "OptimizeMode",
                  "id": 9,
                  "options": {
                    "default": "SPEED"
                  }
                },
                "goPackage": {
                  "type": "string",
                  "id": 11
                },
                "ccGenericServices": {
                  "type": "bool",
                  "id": 16,
                  "options": {
                    "default": false
                  }
                },
                "javaGenericServices": {
                  "type": "bool",
                  "id": 17,
                  "options": {
                    "default": false
                  }
                },
                "pyGenericServices": {
                  "type": "bool",
                  "id": 18,
                  "options": {
                    "default": false
                  }
                },
                "deprecated": {
                  "type": "bool",
                  "id": 23,
                  "options": {
                    "default": false
                  }
                },
                "ccEnableArenas": {
                  "type": "bool",
                  "id": 31,
                  "options": {
                    "default": true
                  }
                },
                "objcClassPrefix": {
                  "type": "string",
                  "id": 36
                },
                "csharpNamespace": {
                  "type": "string",
                  "id": 37
                },
                "swiftPrefix": {
                  "type": "string",
                  "id": 39
                },
                "phpClassPrefix": {
                  "type": "string",
                  "id": 40
                },
                "phpNamespace": {
                  "type": "string",
                  "id": 41
                },
                "phpMetadataNamespace": {
                  "type": "string",
                  "id": 44
                },
                "rubyPackage": {
                  "type": "string",
                  "id": 45
                },
                "features": {
                  "type": "FeatureSet",
                  "id": 50
                },
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ],
              "reserved": [
                [
                  42,
                  42
                ],
                "php_generic_services",
                [
                  38,
                  38
                ]
              ],
              "nested": {
                "OptimizeMode": {
                  "values": {
                    "SPEED": 1,
                    "CODE_SIZE": 2,
                    "LITE_RUNTIME": 3
                  }
                }
              }
            },
            "MessageOptions": {
              "edition": "proto2",
              "fields": {
                "messageSetWireFormat": {
                  "type": "bool",
                  "id": 1,
                  "options": {
                    "default": false
                  }
                },
                "noStandardDescriptorAccessor": {
                  "type": "bool",
                  "id": 2,
                  "options": {
                    "default": false
                  }
                },
                "deprecated": {
                  "type": "bool",
                  "id": 3,
                  "options": {
                    "default": false
                  }
                },
                "mapEntry": {
                  "type": "bool",
                  "id": 7
                },
                "deprecatedLegacyJsonFieldConflicts": {
                  "type": "bool",
                  "id": 11,
                  "options": {
                    "deprecated": true
                  }
                },
                "features": {
                  "type": "FeatureSet",
                  "id": 12
                },
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ],
              "reserved": [
                [
                  4,
                  4
                ],
                [
                  5,
                  5
                ],
                [
                  6,
                  6
                ],
                [
                  8,
                  8
                ],
                [
                  9,
                  9
                ]
              ]
            },
            "FieldOptions": {
              "edition": "proto2",
              "fields": {
                "ctype": {
                  "type": "CType",
                  "id": 1,
                  "options": {
                    "default": "STRING"
                  }
                },
                "packed": {
                  "type": "bool",
                  "id": 2
                },
                "jstype": {
                  "type": "JSType",
                  "id": 6,
                  "options": {
                    "default": "JS_NORMAL"
                  }
                },
                "lazy": {
                  "type": "bool",
                  "id": 5,
                  "options": {
                    "default": false
                  }
                },
                "unverifiedLazy": {
                  "type": "bool",
                  "id": 15,
                  "options": {
                    "default": false
                  }
                },
                "deprecated": {
                  "type": "bool",
                  "id": 3,
                  "options": {
                    "default": false
                  }
                },
                "weak": {
                  "type": "bool",
                  "id": 10,
                  "options": {
                    "default": false,
                    "deprecated": true
                  }
                },
                "debugRedact": {
                  "type": "bool",
                  "id": 16,
                  "options": {
                    "default": false
                  }
                },
                "retention": {
                  "type": "OptionRetention",
                  "id": 17
                },
                "targets": {
                  "rule": "repeated",
                  "type": "OptionTargetType",
                  "id": 19
                },
                "editionDefaults": {
                  "rule": "repeated",
                  "type": "EditionDefault",
                  "id": 20
                },
                "features": {
                  "type": "FeatureSet",
                  "id": 21
                },
                "featureSupport": {
                  "type": "FeatureSupport",
                  "id": 22
                },
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ],
              "reserved": [
                [
                  4,
                  4
                ],
                [
                  18,
                  18
                ]
              ],
              "nested": {
                "CType": {
                  "values": {
                    "STRING": 0,
                    "CORD": 1,
                    "STRING_PIECE": 2
                  }
                },
                "JSType": {
                  "values": {
                    "JS_NORMAL": 0,
                    "JS_STRING": 1,
                    "JS_NUMBER": 2
                  }
                },
                "OptionRetention": {
                  "values": {
                    "RETENTION_UNKNOWN": 0,
                    "RETENTION_RUNTIME": 1,
                    "RETENTION_SOURCE": 2
                  }
                },
                "OptionTargetType": {
                  "values": {
                    "TARGET_TYPE_UNKNOWN": 0,
                    "TARGET_TYPE_FILE": 1,
                    "TARGET_TYPE_EXTENSION_RANGE": 2,
                    "TARGET_TYPE_MESSAGE": 3,
                    "TARGET_TYPE_FIELD": 4,
                    "TARGET_TYPE_ONEOF": 5,
                    "TARGET_TYPE_ENUM": 6,
                    "TARGET_TYPE_ENUM_ENTRY": 7,
                    "TARGET_TYPE_SERVICE": 8,
                    "TARGET_TYPE_METHOD": 9
                  }
                },
                "EditionDefault": {
                  "fields": {
                    "edition": {
                      "type": "Edition",
                      "id": 3
                    },
                    "value": {
                      "type": "string",
                      "id": 2
                    }
                  }
                },
                "FeatureSupport": {
                  "fields": {
                    "editionIntroduced": {
                      "type": "Edition",
                      "id": 1
                    },
                    "editionDeprecated": {
                      "type": "Edition",
                      "id": 2
                    },
                    "deprecationWarning": {
                      "type": "string",
                      "id": 3
                    },
                    "editionRemoved": {
                      "type": "Edition",
                      "id": 4
                    }
                  }
                }
              }
            },
            "OneofOptions": {
              "edition": "proto2",
              "fields": {
                "features": {
                  "type": "FeatureSet",
                  "id": 1
                },
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ]
            },
            "EnumOptions": {
              "edition": "proto2",
              "fields": {
                "allowAlias": {
                  "type": "bool",
                  "id": 2
                },
                "deprecated": {
                  "type": "bool",
                  "id": 3,
                  "options": {
                    "default": false
                  }
                },
                "deprecatedLegacyJsonFieldConflicts": {
                  "type": "bool",
                  "id": 6,
                  "options": {
                    "deprecated": true
                  }
                },
                "features": {
                  "type": "FeatureSet",
                  "id": 7
                },
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ],
              "reserved": [
                [
                  5,
                  5
                ]
              ]
            },
            "EnumValueOptions": {
              "edition": "proto2",
              "fields": {
                "deprecated": {
                  "type": "bool",
                  "id": 1,
                  "options": {
                    "default": false
                  }
                },
                "features": {
                  "type": "FeatureSet",
                  "id": 2
                },
                "debugRedact": {
                  "type": "bool",
                  "id": 3,
                  "options": {
                    "default": false
                  }
                },
                "featureSupport": {
                  "type": "FieldOptions.FeatureSupport",
                  "id": 4
                },
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ]
            },
            "ServiceOptions": {
              "edition": "proto2",
              "fields": {
                "features": {
                  "type": "FeatureSet",
                  "id": 34
                },
                "deprecated": {
                  "type": "bool",
                  "id": 33,
                  "options": {
                    "default": false
                  }
                },
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ]
            },
            "MethodOptions": {
              "edition": "proto2",
              "fields": {
                "deprecated": {
                  "type": "bool",
                  "id": 33,
                  "options": {
                    "default": false
                  }
                },
                "idempotencyLevel": {
                  "type": "IdempotencyLevel",
                  "id": 34,
                  "options": {
                    "default": "IDEMPOTENCY_UNKNOWN"
                  }
                },
                "features": {
                  "type": "FeatureSet",
                  "id": 35
                },
                "uninterpretedOption": {
                  "rule": "repeated",
                  "type": "UninterpretedOption",
                  "id": 999
                }
              },
              "extensions": [
                [
                  1000,
                  536870911
                ]
              ],
              "nested": {
                "IdempotencyLevel": {
                  "values": {
                    "IDEMPOTENCY_UNKNOWN": 0,
                    "NO_SIDE_EFFECTS": 1,
                    "IDEMPOTENT": 2
                  }
                }
              }
            },
            "UninterpretedOption": {
              "edition": "proto2",
              "fields": {
                "name": {
                  "rule": "repeated",
                  "type": "NamePart",
                  "id": 2
                },
                "identifierValue": {
                  "type": "string",
                  "id": 3
                },
                "positiveIntValue": {
                  "type": "uint64",
                  "id": 4
                },
                "negativeIntValue": {
                  "type": "int64",
                  "id": 5
                },
                "doubleValue": {
                  "type": "double",
                  "id": 6
                },
                "stringValue": {
                  "type": "bytes",
                  "id": 7
                },
                "aggregateValue": {
                  "type": "string",
                  "id": 8
                }
              },
              "nested": {
                "NamePart": {
                  "fields": {
                    "namePart": {
                      "rule": "required",
                      "type": "string",
                      "id": 1
                    },
                    "isExtension": {
                      "rule": "required",
                      "type": "bool",
                      "id": 2
                    }
                  }
                }
              }
            },
            "FeatureSet": {
              "edition": "proto2",
              "fields": {
                "fieldPresence": {
                  "type": "FieldPresence",
                  "id": 1,
                  "options": {
                    "retention": "RETENTION_RUNTIME",
                    "targets": "TARGET_TYPE_FILE",
                    "feature_support.edition_introduced": "EDITION_2023",
                    "edition_defaults.edition": "EDITION_2023",
                    "edition_defaults.value": "EXPLICIT"
                  }
                },
                "enumType": {
                  "type": "EnumType",
                  "id": 2,
                  "options": {
                    "retention": "RETENTION_RUNTIME",
                    "targets": "TARGET_TYPE_FILE",
                    "feature_support.edition_introduced": "EDITION_2023",
                    "edition_defaults.edition": "EDITION_PROTO3",
                    "edition_defaults.value": "OPEN"
                  }
                },
                "repeatedFieldEncoding": {
                  "type": "RepeatedFieldEncoding",
                  "id": 3,
                  "options": {
                    "retention": "RETENTION_RUNTIME",
                    "targets": "TARGET_TYPE_FILE",
                    "feature_support.edition_introduced": "EDITION_2023",
                    "edition_defaults.edition": "EDITION_PROTO3",
                    "edition_defaults.value": "PACKED"
                  }
                },
                "utf8Validation": {
                  "type": "Utf8Validation",
                  "id": 4,
                  "options": {
                    "retention": "RETENTION_RUNTIME",
                    "targets": "TARGET_TYPE_FILE",
                    "feature_support.edition_introduced": "EDITION_2023",
                    "edition_defaults.edition": "EDITION_PROTO3",
                    "edition_defaults.value": "VERIFY"
                  }
                },
                "messageEncoding": {
                  "type": "MessageEncoding",
                  "id": 5,
                  "options": {
                    "retention": "RETENTION_RUNTIME",
                    "targets": "TARGET_TYPE_FILE",
                    "feature_support.edition_introduced": "EDITION_2023",
                    "edition_defaults.edition": "EDITION_LEGACY",
                    "edition_defaults.value": "LENGTH_PREFIXED"
                  }
                },
                "jsonFormat": {
                  "type": "JsonFormat",
                  "id": 6,
                  "options": {
                    "retention": "RETENTION_RUNTIME",
                    "targets": "TARGET_TYPE_FILE",
                    "feature_support.edition_introduced": "EDITION_2023",
                    "edition_defaults.edition": "EDITION_PROTO3",
                    "edition_defaults.value": "ALLOW"
                  }
                },
                "enforceNamingStyle": {
                  "type": "EnforceNamingStyle",
                  "id": 7,
                  "options": {
                    "retention": "RETENTION_SOURCE",
                    "targets": "TARGET_TYPE_METHOD",
                    "feature_support.edition_introduced": "EDITION_2024",
                    "edition_defaults.edition": "EDITION_2024",
                    "edition_defaults.value": "STYLE2024"
                  }
                },
                "defaultSymbolVisibility": {
                  "type": "VisibilityFeature.DefaultSymbolVisibility",
                  "id": 8,
                  "options": {
                    "retention": "RETENTION_SOURCE",
                    "targets": "TARGET_TYPE_FILE",
                    "feature_support.edition_introduced": "EDITION_2024",
                    "edition_defaults.edition": "EDITION_2024",
                    "edition_defaults.value": "EXPORT_TOP_LEVEL"
                  }
                }
              },
              "extensions": [
                [
                  1000,
                  9994
                ],
                [
                  9995,
                  9999
                ],
                [
                  10000,
                  10000
                ]
              ],
              "reserved": [
                [
                  999,
                  999
                ]
              ],
              "nested": {
                "FieldPresence": {
                  "values": {
                    "FIELD_PRESENCE_UNKNOWN": 0,
                    "EXPLICIT": 1,
                    "IMPLICIT": 2,
                    "LEGACY_REQUIRED": 3
                  }
                },
                "EnumType": {
                  "values": {
                    "ENUM_TYPE_UNKNOWN": 0,
                    "OPEN": 1,
                    "CLOSED": 2
                  }
                },
                "RepeatedFieldEncoding": {
                  "values": {
                    "REPEATED_FIELD_ENCODING_UNKNOWN": 0,
                    "PACKED": 1,
                    "EXPANDED": 2
                  }
                },
                "Utf8Validation": {
                  "values": {
                    "UTF8_VALIDATION_UNKNOWN": 0,
                    "VERIFY": 2,
                    "NONE": 3
                  },
                  "reserved": [
                    [
                      1,
                      1
                    ]
                  ]
                },
                "MessageEncoding": {
                  "values": {
                    "MESSAGE_ENCODING_UNKNOWN": 0,
                    "LENGTH_PREFIXED": 1,
                    "DELIMITED": 2
                  }
                },
                "JsonFormat": {
                  "values": {
                    "JSON_FORMAT_UNKNOWN": 0,
                    "ALLOW": 1,
                    "LEGACY_BEST_EFFORT": 2
                  }
                },
                "EnforceNamingStyle": {
                  "values": {
                    "ENFORCE_NAMING_STYLE_UNKNOWN": 0,
                    "STYLE2024": 1,
                    "STYLE_LEGACY": 2
                  }
                },
                "VisibilityFeature": {
                  "fields": {},
                  "reserved": [
                    [
                      1,
                      536870911
                    ]
                  ],
                  "nested": {
                    "DefaultSymbolVisibility": {
                      "values": {
                        "DEFAULT_SYMBOL_VISIBILITY_UNKNOWN": 0,
                        "EXPORT_ALL": 1,
                        "EXPORT_TOP_LEVEL": 2,
                        "LOCAL_ALL": 3,
                        "STRICT": 4
                      }
                    }
                  }
                }
              }
            },
            "FeatureSetDefaults": {
              "edition": "proto2",
              "fields": {
                "defaults": {
                  "rule": "repeated",
                  "type": "FeatureSetEditionDefault",
                  "id": 1
                },
                "minimumEdition": {
                  "type": "Edition",
                  "id": 4
                },
                "maximumEdition": {
                  "type": "Edition",
                  "id": 5
                }
              },
              "nested": {
                "FeatureSetEditionDefault": {
                  "fields": {
                    "edition": {
                      "type": "Edition",
                      "id": 3
                    },
                    "overridableFeatures": {
                      "type": "FeatureSet",
                      "id": 4
                    },
                    "fixedFeatures": {
                      "type": "FeatureSet",
                      "id": 5
                    }
                  },
                  "reserved": [
                    [
                      1,
                      1
                    ],
                    [
                      2,
                      2
                    ],
                    "features"
                  ]
                }
              }
            },
            "SourceCodeInfo": {
              "edition": "proto2",
              "fields": {
                "location": {
                  "rule": "repeated",
                  "type": "Location",
                  "id": 1
                }
              },
              "extensions": [
                [
                  536000000,
                  536000000
                ]
              ],
              "nested": {
                "Location": {
                  "fields": {
                    "path": {
                      "rule": "repeated",
                      "type": "int32",
                      "id": 1,
                      "options": {
                        "packed": true
                      }
                    },
                    "span": {
                      "rule": "repeated",
                      "type": "int32",
                      "id": 2,
                      "options": {
                        "packed": true
                      }
                    },
                    "leadingComments": {
                      "type": "string",
                      "id": 3
                    },
                    "trailingComments": {
                      "type": "string",
                      "id": 4
                    },
                    "leadingDetachedComments": {
                      "rule": "repeated",
                      "type": "string",
                      "id": 6
                    }
                  }
                }
              }
            },
            "GeneratedCodeInfo": {
              "edition": "proto2",
              "fields": {
                "annotation": {
                  "rule": "repeated",
                  "type": "Annotation",
                  "id": 1
                }
              },
              "nested": {
                "Annotation": {
                  "fields": {
                    "path": {
                      "rule": "repeated",
                      "type": "int32",
                      "id": 1,
                      "options": {
                        "packed": true
                      }
                    },
                    "sourceFile": {
                      "type": "string",
                      "id": 2
                    },
                    "begin": {
                      "type": "int32",
                      "id": 3
                    },
                    "end": {
                      "type": "int32",
                      "id": 4
                    },
                    "semantic": {
                      "type": "Semantic",
                      "id": 5
                    }
                  },
                  "nested": {
                    "Semantic": {
                      "values": {
                        "NONE": 0,
                        "SET": 1,
                        "ALIAS": 2
                      }
                    }
                  }
                }
              }
            },
            "SymbolVisibility": {
              "edition": "proto2",
              "values": {
                "VISIBILITY_UNSET": 0,
                "VISIBILITY_LOCAL": 1,
                "VISIBILITY_EXPORT": 2
              }
            },
            "Duration": {
              "fields": {
                "seconds": {
                  "type": "int64",
                  "id": 1
                },
                "nanos": {
                  "type": "int32",
                  "id": 2
                }
              }
            },
            "FieldMask": {
              "fields": {
                "paths": {
                  "rule": "repeated",
                  "type": "string",
                  "id": 1
                }
              }
            },
            "Any": {
              "fields": {
                "type_url": {
                  "type": "string",
                  "id": 1
                },
                "value": {
                  "type": "bytes",
                  "id": 2
                }
              }
            },
            "Empty": {
              "fields": {}
            },
            "Timestamp": {
              "fields": {
                "seconds": {
                  "type": "int64",
                  "id": 1
                },
                "nanos": {
                  "type": "int32",
                  "id": 2
                }
              }
            }
          }
        },
        "iam": {
          "nested": {
            "v1": {
              "options": {
                "csharp_namespace": "Google.Cloud.Iam.V1",
                "go_package": "cloud.google.com/go/iam/apiv1/iampb;iampb",
                "java_multiple_files": true,
                "java_outer_classname": "PolicyProto",
                "java_package": "com.google.iam.v1",
                "php_namespace": "Google\\Cloud\\Iam\\V1",
                "cc_enable_arenas": true
              },
              "nested": {
                "IAMPolicy": {
                  "options": {
                    "(google.api.default_host)": "iam-meta-api.googleapis.com"
                  },
                  "methods": {
                    "SetIamPolicy": {
                      "requestType": "SetIamPolicyRequest",
                      "responseType": "Policy",
                      "options": {
                        "(google.api.http).post": "/v1/{resource=**}:setIamPolicy",
                        "(google.api.http).body": "*"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.http)": {
                            "post": "/v1/{resource=**}:setIamPolicy",
                            "body": "*"
                          }
                        }
                      ]
                    },
                    "GetIamPolicy": {
                      "requestType": "GetIamPolicyRequest",
                      "responseType": "Policy",
                      "options": {
                        "(google.api.http).post": "/v1/{resource=**}:getIamPolicy",
                        "(google.api.http).body": "*"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.http)": {
                            "post": "/v1/{resource=**}:getIamPolicy",
                            "body": "*"
                          }
                        }
                      ]
                    },
                    "TestIamPermissions": {
                      "requestType": "TestIamPermissionsRequest",
                      "responseType": "TestIamPermissionsResponse",
                      "options": {
                        "(google.api.http).post": "/v1/{resource=**}:testIamPermissions",
                        "(google.api.http).body": "*"
                      },
                      "parsedOptions": [
                        {
                          "(google.api.http)": {
                            "post": "/v1/{resource=**}:testIamPermissions",
                            "body": "*"
                          }
                        }
                      ]
                    }
                  }
                },
                "SetIamPolicyRequest": {
                  "fields": {
                    "resource": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "*"
                      }
                    },
                    "policy": {
                      "type": "Policy",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    },
                    "updateMask": {
                      "type": "google.protobuf.FieldMask",
                      "id": 3
                    }
                  }
                },
                "GetIamPolicyRequest": {
                  "fields": {
                    "resource": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "*"
                      }
                    },
                    "options": {
                      "type": "GetPolicyOptions",
                      "id": 2
                    }
                  }
                },
                "TestIamPermissionsRequest": {
                  "fields": {
                    "resource": {
                      "type": "string",
                      "id": 1,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED",
                        "(google.api.resource_reference).type": "*"
                      }
                    },
                    "permissions": {
                      "rule": "repeated",
                      "type": "string",
                      "id": 2,
                      "options": {
                        "(google.api.field_behavior)": "REQUIRED"
                      }
                    }
                  }
                },
                "TestIamPermissionsResponse": {
                  "fields": {
                    "permissions": {
                      "rule": "repeated",
                      "type": "string",
                      "id": 1
                    }
                  }
                },
                "GetPolicyOptions": {
                  "fields": {
                    "requestedPolicyVersion": {
                      "type": "int32",
                      "id": 1
                    }
                  }
                },
                "Policy": {
                  "fields": {
                    "version": {
                      "type": "int32",
                      "id": 1
                    },
                    "bindings": {
                      "rule": "repeated",
                      "type": "Binding",
                      "id": 4
                    },
                    "auditConfigs": {
                      "rule": "repeated",
                      "type": "AuditConfig",
                      "id": 6
                    },
                    "etag": {
                      "type": "bytes",
                      "id": 3
                    }
                  }
                },
                "Binding": {
                  "fields": {
                    "role": {
                      "type": "string",
                      "id": 1
                    },
                    "members": {
                      "rule": "repeated",
                      "type": "string",
                      "id": 2
                    },
                    "condition": {
                      "type": "google.type.Expr",
                      "id": 3
                    }
                  }
                },
                "AuditConfig": {
                  "fields": {
                    "service": {
                      "type": "string",
                      "id": 1
                    },
                    "auditLogConfigs": {
                      "rule": "repeated",
                      "type": "AuditLogConfig",
                      "id": 3
                    }
                  }
                },
                "AuditLogConfig": {
                  "fields": {
                    "logType": {
                      "type": "LogType",
                      "id": 1
                    },
                    "exemptedMembers": {
                      "rule": "repeated",
                      "type": "string",
                      "id": 2
                    }
                  },
                  "nested": {
                    "LogType": {
                      "values": {
                        "LOG_TYPE_UNSPECIFIED": 0,
                        "ADMIN_READ": 1,
                        "DATA_WRITE": 2,
                        "DATA_READ": 3
                      }
                    }
                  }
                },
                "PolicyDelta": {
                  "fields": {
                    "bindingDeltas": {
                      "rule": "repeated",
                      "type": "BindingDelta",
                      "id": 1
                    },
                    "auditConfigDeltas": {
                      "rule": "repeated",
                      "type": "AuditConfigDelta",
                      "id": 2
                    }
                  }
                },
                "BindingDelta": {
                  "fields": {
                    "action": {
                      "type": "Action",
                      "id": 1
                    },
                    "role": {
                      "type": "string",
                      "id": 2
                    },
                    "member": {
                      "type": "string",
                      "id": 3
                    },
                    "condition": {
                      "type": "google.type.Expr",
                      "id": 4
                    }
                  },
                  "nested": {
                    "Action": {
                      "values": {
                        "ACTION_UNSPECIFIED": 0,
                        "ADD": 1,
                        "REMOVE": 2
                      }
                    }
                  }
                },
                "AuditConfigDelta": {
                  "fields": {
                    "action": {
                      "type": "Action",
                      "id": 1
                    },
                    "service": {
                      "type": "string",
                      "id": 2
                    },
                    "exemptedMember": {
                      "type": "string",
                      "id": 3
                    },
                    "logType": {
                      "type": "string",
                      "id": 4
                    }
                  },
                  "nested": {
                    "Action": {
                      "values": {
                        "ACTION_UNSPECIFIED": 0,
                        "ADD": 1,
                        "REMOVE": 2
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "type": {
          "options": {
            "go_package": "google.golang.org/genproto/googleapis/type/date;date",
            "java_multiple_files": true,
            "java_outer_classname": "DateProto",
            "java_package": "com.google.type",
            "objc_class_prefix": "GTP",
            "cc_enable_arenas": true
          },
          "nested": {
            "Expr": {
              "fields": {
                "expression": {
                  "type": "string",
                  "id": 1
                },
                "title": {
                  "type": "string",
                  "id": 2
                },
                "description": {
                  "type": "string",
                  "id": 3
                },
                "location": {
                  "type": "string",
                  "id": 4
                }
              }
            },
            "Date": {
              "fields": {
                "year": {
                  "type": "int32",
                  "id": 1
                },
                "month": {
                  "type": "int32",
                  "id": 2
                },
                "day": {
                  "type": "int32",
                  "id": 3
                }
              }
            }
          }
        },
        "longrunning": {
          "options": {
            "cc_enable_arenas": true,
            "csharp_namespace": "Google.LongRunning",
            "go_package": "cloud.google.com/go/longrunning/autogen/longrunningpb;longrunningpb",
            "java_multiple_files": true,
            "java_outer_classname": "OperationsProto",
            "java_package": "com.google.longrunning",
            "objc_class_prefix": "GLRUN",
            "php_namespace": "Google\\LongRunning"
          },
          "nested": {
            "operationInfo": {
              "type": "google.longrunning.OperationInfo",
              "id": 1049,
              "extend": "google.protobuf.MethodOptions"
            },
            "Operations": {
              "options": {
                "(google.api.default_host)": "longrunning.googleapis.com"
              },
              "methods": {
                "ListOperations": {
                  "requestType": "ListOperationsRequest",
                  "responseType": "ListOperationsResponse",
                  "options": {
                    "(google.api.http).get": "/v1/{name=operations}",
                    "(google.api.method_signature)": "name,filter"
                  },
                  "parsedOptions": [
                    {
                      "(google.api.http)": {
                        "get": "/v1/{name=operations}"
                      }
                    },
                    {
                      "(google.api.method_signature)": "name,filter"
                    }
                  ]
                },
                "GetOperation": {
                  "requestType": "GetOperationRequest",
                  "responseType": "Operation",
                  "options": {
                    "(google.api.http).get": "/v1/{name=operations/**}",
                    "(google.api.method_signature)": "name"
                  },
                  "parsedOptions": [
                    {
                      "(google.api.http)": {
                        "get": "/v1/{name=operations/**}"
                      }
                    },
                    {
                      "(google.api.method_signature)": "name"
                    }
                  ]
                },
                "DeleteOperation": {
                  "requestType": "DeleteOperationRequest",
                  "responseType": "google.protobuf.Empty",
                  "options": {
                    "(google.api.http).delete": "/v1/{name=operations/**}",
                    "(google.api.method_signature)": "name"
                  },
                  "parsedOptions": [
                    {
                      "(google.api.http)": {
                        "delete": "/v1/{name=operations/**}"
                      }
                    },
                    {
                      "(google.api.method_signature)": "name"
                    }
                  ]
                },
                "CancelOperation": {
                  "requestType": "CancelOperationRequest",
                  "responseType": "google.protobuf.Empty",
                  "options": {
                    "(google.api.http).post": "/v1/{name=operations/**}:cancel",
                    "(google.api.http).body": "*",
                    "(google.api.method_signature)": "name"
                  },
                  "parsedOptions": [
                    {
                      "(google.api.http)": {
                        "post": "/v1/{name=operations/**}:cancel",
                        "body": "*"
                      }
                    },
                    {
                      "(google.api.method_signature)": "name"
                    }
                  ]
                },
                "WaitOperation": {
                  "requestType": "WaitOperationRequest",
                  "responseType": "Operation"
                }
              }
            },
            "Operation": {
              "oneofs": {
                "result": {
                  "oneof": [
                    "error",
                    "response"
                  ]
                }
              },
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "metadata": {
                  "type": "google.protobuf.Any",
                  "id": 2
                },
                "done": {
                  "type": "bool",
                  "id": 3
                },
                "error": {
                  "type": "google.rpc.Status",
                  "id": 4
                },
                "response": {
                  "type": "google.protobuf.Any",
                  "id": 5
                }
              }
            },
            "GetOperationRequest": {
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                }
              }
            },
            "ListOperationsRequest": {
              "fields": {
                "name": {
                  "type": "string",
                  "id": 4
                },
                "filter": {
                  "type": "string",
                  "id": 1
                },
                "pageSize": {
                  "type": "int32",
                  "id": 2
                },
                "pageToken": {
                  "type": "string",
                  "id": 3
                }
              }
            },
            "ListOperationsResponse": {
              "fields": {
                "operations": {
                  "rule": "repeated",
                  "type": "Operation",
                  "id": 1
                },
                "nextPageToken": {
                  "type": "string",
                  "id": 2
                }
              }
            },
            "CancelOperationRequest": {
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                }
              }
            },
            "DeleteOperationRequest": {
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                }
              }
            },
            "WaitOperationRequest": {
              "fields": {
                "name": {
                  "type": "string",
                  "id": 1
                },
                "timeout": {
                  "type": "google.protobuf.Duration",
                  "id": 2
                }
              }
            },
            "OperationInfo": {
              "fields": {
                "responseType": {
                  "type": "string",
                  "id": 1
                },
                "metadataType": {
                  "type": "string",
                  "id": 2
                }
              }
            }
          }
        },
        "rpc": {
          "options": {
            "cc_enable_arenas": true,
            "go_package": "google.golang.org/genproto/googleapis/rpc/status;status",
            "java_multiple_files": true,
            "java_outer_classname": "StatusProto",
            "java_package": "com.google.rpc",
            "objc_class_prefix": "RPC"
          },
          "nested": {
            "Status": {
              "fields": {
                "code": {
                  "type": "int32",
                  "id": 1
                },
                "message": {
                  "type": "string",
                  "id": 2
                },
                "details": {
                  "rule": "repeated",
                  "type": "google.protobuf.Any",
                  "id": 3
                }
              }
            }
          }
        }
      }
    }
  }
}