diff --git a/googleapis/api/annotations/resource.pb.go b/googleapis/api/annotations/resource.pb.go
index d1d8eb54a3..17048707d9 100644
--- a/googleapis/api/annotations/resource.pb.go
+++ b/googleapis/api/annotations/resource.pb.go
@@ -82,12 +82,12 @@ func (ResourceDescriptor_History) EnumDescriptor() ([]byte, []int) {
//
// The ResourceDescriptor Yaml config will look like:
//
-// resources:
-// - type: "pubsub.googleapis.com/Topic"
-// name_descriptor:
-// - pattern: "projects/{project}/topics/{topic}"
-// parent_type: "cloudresourcemanager.googleapis.com/Project"
-// parent_name_extractor: "projects/{project}"
+// resources:
+// - type: "pubsub.googleapis.com/Topic"
+// name_descriptor:
+// - pattern: "projects/{project}/topics/{topic}"
+// parent_type: "cloudresourcemanager.googleapis.com/Project"
+// parent_name_extractor: "projects/{project}"
//
// Sometimes, resources have multiple patterns, typically because they can
// live under multiple parents.
@@ -317,11 +317,11 @@ type ResourceReference struct {
//
// Example:
//
- // message ListLogEntriesRequest {
- // string parent = 1 [(google.api.resource_reference) = {
- // child_type: "logging.googleapis.com/LogEntry"
- // };
- // }
+ // message ListLogEntriesRequest {
+ // string parent = 1 [(google.api.resource_reference) = {
+ // child_type: "logging.googleapis.com/LogEntry"
+ // };
+ // }
ChildType string `protobuf:"bytes,2,opt,name=child_type,json=childType,proto3" json:"child_type,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
diff --git a/googleapis/cloud/datacatalog/v1/common.pb.go b/googleapis/cloud/datacatalog/v1/common.pb.go
new file mode 100644
index 0000000000..75f1a245b9
--- /dev/null
+++ b/googleapis/cloud/datacatalog/v1/common.pb.go
@@ -0,0 +1,81 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/datacatalog/v1/common.proto
+
+package datacatalog
+
+import (
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// This enum describes all the possible systems that Data Catalog integrates
+// with.
+type IntegratedSystem int32
+
+const (
+ // Default unknown system.
+ IntegratedSystem_INTEGRATED_SYSTEM_UNSPECIFIED IntegratedSystem = 0
+ // BigQuery.
+ IntegratedSystem_BIGQUERY IntegratedSystem = 1
+ // Cloud Pub/Sub.
+ IntegratedSystem_CLOUD_PUBSUB IntegratedSystem = 2
+)
+
+var IntegratedSystem_name = map[int32]string{
+ 0: "INTEGRATED_SYSTEM_UNSPECIFIED",
+ 1: "BIGQUERY",
+ 2: "CLOUD_PUBSUB",
+}
+
+var IntegratedSystem_value = map[string]int32{
+ "INTEGRATED_SYSTEM_UNSPECIFIED": 0,
+ "BIGQUERY": 1,
+ "CLOUD_PUBSUB": 2,
+}
+
+func (x IntegratedSystem) String() string {
+ return proto.EnumName(IntegratedSystem_name, int32(x))
+}
+
+func (IntegratedSystem) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_fec73966e023eb05, []int{0}
+}
+
+func init() {
+ proto.RegisterEnum("google.cloud.datacatalog.v1.IntegratedSystem", IntegratedSystem_name, IntegratedSystem_value)
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/datacatalog/v1/common.proto", fileDescriptor_fec73966e023eb05)
+}
+
+var fileDescriptor_fec73966e023eb05 = []byte{
+ // 219 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xd2, 0x48, 0xcf, 0xcf, 0x4f,
+ 0xcf, 0x49, 0xd5, 0x4f, 0xce, 0xc9, 0x2f, 0x4d, 0xd1, 0x4f, 0x49, 0x2c, 0x49, 0x4c, 0x4e, 0x2c,
+ 0x49, 0xcc, 0xc9, 0x4f, 0xd7, 0x2f, 0x33, 0xd4, 0x4f, 0xce, 0xcf, 0xcd, 0xcd, 0xcf, 0xd3, 0x2b,
+ 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x92, 0x86, 0xa8, 0xd4, 0x03, 0xab, 0xd4, 0x43, 0x52, 0xa9, 0x57,
+ 0x66, 0xa8, 0x15, 0xca, 0x25, 0xe0, 0x99, 0x57, 0x92, 0x9a, 0x5e, 0x94, 0x58, 0x92, 0x9a, 0x12,
+ 0x5c, 0x59, 0x5c, 0x92, 0x9a, 0x2b, 0xa4, 0xc8, 0x25, 0xeb, 0xe9, 0x17, 0xe2, 0xea, 0x1e, 0xe4,
+ 0x18, 0xe2, 0xea, 0x12, 0x1f, 0x1c, 0x19, 0x1c, 0xe2, 0xea, 0x1b, 0x1f, 0xea, 0x17, 0x1c, 0xe0,
+ 0xea, 0xec, 0xe9, 0xe6, 0xe9, 0xea, 0x22, 0xc0, 0x20, 0xc4, 0xc3, 0xc5, 0xe1, 0xe4, 0xe9, 0x1e,
+ 0x18, 0xea, 0x1a, 0x14, 0x29, 0xc0, 0x28, 0x24, 0xc0, 0xc5, 0xe3, 0xec, 0xe3, 0x1f, 0xea, 0x12,
+ 0x1f, 0x10, 0xea, 0x14, 0x1c, 0xea, 0x24, 0xc0, 0xe4, 0x94, 0xc7, 0x25, 0x9f, 0x9c, 0x9f, 0xab,
+ 0x87, 0xc7, 0xe6, 0x00, 0xc6, 0x28, 0x37, 0xa8, 0x74, 0x7a, 0x7e, 0x4e, 0x62, 0x5e, 0xba, 0x5e,
+ 0x7e, 0x51, 0xba, 0x7e, 0x7a, 0x6a, 0x1e, 0xd8, 0xd1, 0xfa, 0x10, 0xa9, 0xc4, 0x82, 0xcc, 0x62,
+ 0xac, 0x3e, 0xb4, 0x46, 0xe2, 0xfe, 0x60, 0x64, 0x4c, 0x62, 0x03, 0xeb, 0x32, 0x06, 0x04, 0x00,
+ 0x00, 0xff, 0xff, 0x29, 0x41, 0xc8, 0x6b, 0x16, 0x01, 0x00, 0x00,
+}
diff --git a/googleapis/cloud/datacatalog/v1/datacatalog.pb.go b/googleapis/cloud/datacatalog/v1/datacatalog.pb.go
new file mode 100644
index 0000000000..d3339f521b
--- /dev/null
+++ b/googleapis/cloud/datacatalog/v1/datacatalog.pb.go
@@ -0,0 +1,3728 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/datacatalog/v1/datacatalog.proto
+
+package datacatalog
+
+import (
+ context "context"
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ empty "github.com/golang/protobuf/ptypes/empty"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ v1 "google.golang.org/genproto/googleapis/iam/v1"
+ field_mask "google.golang.org/genproto/protobuf/field_mask"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// Entry resources in Data Catalog can be of different types e.g. a BigQuery
+// Table entry is of type `TABLE`. This enum describes all the possible types
+// Data Catalog contains.
+type EntryType int32
+
+const (
+ // Default unknown type.
+ EntryType_ENTRY_TYPE_UNSPECIFIED EntryType = 0
+ // Output only. The type of entry that has a GoogleSQL schema, including
+ // logical views.
+ EntryType_TABLE EntryType = 2
+ // Output only. The type of models, examples include
+ // https://cloud.google.com/bigquery-ml/docs/bigqueryml-intro
+ EntryType_MODEL EntryType = 5
+ // Output only. An entry type which is used for streaming entries. Example:
+ // Cloud Pub/Sub topic.
+ EntryType_DATA_STREAM EntryType = 3
+ // An entry type which is a set of files or objects. Example:
+ // Cloud Storage fileset.
+ EntryType_FILESET EntryType = 4
+)
+
+var EntryType_name = map[int32]string{
+ 0: "ENTRY_TYPE_UNSPECIFIED",
+ 2: "TABLE",
+ 5: "MODEL",
+ 3: "DATA_STREAM",
+ 4: "FILESET",
+}
+
+var EntryType_value = map[string]int32{
+ "ENTRY_TYPE_UNSPECIFIED": 0,
+ "TABLE": 2,
+ "MODEL": 5,
+ "DATA_STREAM": 3,
+ "FILESET": 4,
+}
+
+func (x EntryType) String() string {
+ return proto.EnumName(EntryType_name, int32(x))
+}
+
+func (EntryType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{0}
+}
+
+// Request message for
+// [SearchCatalog][google.cloud.datacatalog.v1.DataCatalog.SearchCatalog].
+type SearchCatalogRequest struct {
+ // Required. The scope of this search request. A `scope` that has empty
+ // `include_org_ids`, `include_project_ids` AND false
+ // `include_gcp_public_datasets` is considered invalid. Data Catalog will
+ // return an error in such a case.
+ Scope *SearchCatalogRequest_Scope `protobuf:"bytes,6,opt,name=scope,proto3" json:"scope,omitempty"`
+ // Required. The query string in search query syntax. The query must be non-empty.
+ //
+ // Query strings can be simple as "x" or more qualified as:
+ //
+ // * name:x
+ // * column:x
+ // * description:y
+ //
+ // Note: Query tokens need to have a minimum of 3 characters for substring
+ // matching to work correctly. See [Data Catalog Search
+ // Syntax](/data-catalog/docs/how-to/search-reference) for more information.
+ Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
+ // Number of results in the search page. If <=0 then defaults to 10. Max limit
+ // for page_size is 1000. Throws an invalid argument for page_size > 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. Pagination token returned in an earlier
+ // [SearchCatalogResponse.next_page_token][google.cloud.datacatalog.v1.SearchCatalogResponse.next_page_token], which
+ // indicates that this is a continuation of a prior
+ // [SearchCatalogRequest][google.cloud.datacatalog.v1.DataCatalog.SearchCatalog]
+ // call, and that the system should return the next page of data. If empty,
+ // the first page is returned.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // Specifies the ordering of results, currently supported case-sensitive
+ // choices are:
+ //
+ // * `relevance`, only supports descending
+ // * `last_modified_timestamp [asc|desc]`, defaults to descending if not
+ // specified
+ //
+ // If not specified, defaults to `relevance` descending.
+ OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *SearchCatalogRequest) Reset() { *m = SearchCatalogRequest{} }
+func (m *SearchCatalogRequest) String() string { return proto.CompactTextString(m) }
+func (*SearchCatalogRequest) ProtoMessage() {}
+func (*SearchCatalogRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{0}
+}
+
+func (m *SearchCatalogRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_SearchCatalogRequest.Unmarshal(m, b)
+}
+func (m *SearchCatalogRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_SearchCatalogRequest.Marshal(b, m, deterministic)
+}
+func (m *SearchCatalogRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_SearchCatalogRequest.Merge(m, src)
+}
+func (m *SearchCatalogRequest) XXX_Size() int {
+ return xxx_messageInfo_SearchCatalogRequest.Size(m)
+}
+func (m *SearchCatalogRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_SearchCatalogRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SearchCatalogRequest proto.InternalMessageInfo
+
+func (m *SearchCatalogRequest) GetScope() *SearchCatalogRequest_Scope {
+ if m != nil {
+ return m.Scope
+ }
+ return nil
+}
+
+func (m *SearchCatalogRequest) GetQuery() string {
+ if m != nil {
+ return m.Query
+ }
+ return ""
+}
+
+func (m *SearchCatalogRequest) GetPageSize() int32 {
+ if m != nil {
+ return m.PageSize
+ }
+ return 0
+}
+
+func (m *SearchCatalogRequest) GetPageToken() string {
+ if m != nil {
+ return m.PageToken
+ }
+ return ""
+}
+
+func (m *SearchCatalogRequest) GetOrderBy() string {
+ if m != nil {
+ return m.OrderBy
+ }
+ return ""
+}
+
+// The criteria that select the subspace used for query matching.
+type SearchCatalogRequest_Scope struct {
+ // The list of organization IDs to search within. To find your organization
+ // ID, follow instructions in
+ // https://cloud.google.com/resource-manager/docs/creating-managing-organization.
+ IncludeOrgIds []string `protobuf:"bytes,2,rep,name=include_org_ids,json=includeOrgIds,proto3" json:"include_org_ids,omitempty"`
+ // The list of project IDs to search within. To learn more about the
+ // distinction between project names/IDs/numbers, go to
+ // https://cloud.google.com/docs/overview/#projects.
+ IncludeProjectIds []string `protobuf:"bytes,3,rep,name=include_project_ids,json=includeProjectIds,proto3" json:"include_project_ids,omitempty"`
+ // If `true`, include Google Cloud Platform (GCP) public datasets in the
+ // search results. Info on GCP public datasets is available at
+ // https://cloud.google.com/public-datasets/. By default, GCP public
+ // datasets are excluded.
+ IncludeGcpPublicDatasets bool `protobuf:"varint,7,opt,name=include_gcp_public_datasets,json=includeGcpPublicDatasets,proto3" json:"include_gcp_public_datasets,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *SearchCatalogRequest_Scope) Reset() { *m = SearchCatalogRequest_Scope{} }
+func (m *SearchCatalogRequest_Scope) String() string { return proto.CompactTextString(m) }
+func (*SearchCatalogRequest_Scope) ProtoMessage() {}
+func (*SearchCatalogRequest_Scope) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{0, 0}
+}
+
+func (m *SearchCatalogRequest_Scope) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_SearchCatalogRequest_Scope.Unmarshal(m, b)
+}
+func (m *SearchCatalogRequest_Scope) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_SearchCatalogRequest_Scope.Marshal(b, m, deterministic)
+}
+func (m *SearchCatalogRequest_Scope) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_SearchCatalogRequest_Scope.Merge(m, src)
+}
+func (m *SearchCatalogRequest_Scope) XXX_Size() int {
+ return xxx_messageInfo_SearchCatalogRequest_Scope.Size(m)
+}
+func (m *SearchCatalogRequest_Scope) XXX_DiscardUnknown() {
+ xxx_messageInfo_SearchCatalogRequest_Scope.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SearchCatalogRequest_Scope proto.InternalMessageInfo
+
+func (m *SearchCatalogRequest_Scope) GetIncludeOrgIds() []string {
+ if m != nil {
+ return m.IncludeOrgIds
+ }
+ return nil
+}
+
+func (m *SearchCatalogRequest_Scope) GetIncludeProjectIds() []string {
+ if m != nil {
+ return m.IncludeProjectIds
+ }
+ return nil
+}
+
+func (m *SearchCatalogRequest_Scope) GetIncludeGcpPublicDatasets() bool {
+ if m != nil {
+ return m.IncludeGcpPublicDatasets
+ }
+ return false
+}
+
+// Response message for
+// [SearchCatalog][google.cloud.datacatalog.v1.DataCatalog.SearchCatalog].
+type SearchCatalogResponse struct {
+ // Search results.
+ Results []*SearchCatalogResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"`
+ // The token that can be used to retrieve the next page of results.
+ NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *SearchCatalogResponse) Reset() { *m = SearchCatalogResponse{} }
+func (m *SearchCatalogResponse) String() string { return proto.CompactTextString(m) }
+func (*SearchCatalogResponse) ProtoMessage() {}
+func (*SearchCatalogResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{1}
+}
+
+func (m *SearchCatalogResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_SearchCatalogResponse.Unmarshal(m, b)
+}
+func (m *SearchCatalogResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_SearchCatalogResponse.Marshal(b, m, deterministic)
+}
+func (m *SearchCatalogResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_SearchCatalogResponse.Merge(m, src)
+}
+func (m *SearchCatalogResponse) XXX_Size() int {
+ return xxx_messageInfo_SearchCatalogResponse.Size(m)
+}
+func (m *SearchCatalogResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_SearchCatalogResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SearchCatalogResponse proto.InternalMessageInfo
+
+func (m *SearchCatalogResponse) GetResults() []*SearchCatalogResult {
+ if m != nil {
+ return m.Results
+ }
+ return nil
+}
+
+func (m *SearchCatalogResponse) GetNextPageToken() string {
+ if m != nil {
+ return m.NextPageToken
+ }
+ return ""
+}
+
+// Request message for
+// [CreateEntryGroup][google.cloud.datacatalog.v1.DataCatalog.CreateEntryGroup].
+type CreateEntryGroupRequest struct {
+ // Required. The name of the project this entry group is in. Example:
+ //
+ // * projects/{project_id}/locations/{location}
+ //
+ // Note that this EntryGroup and its child resources may not actually be
+ // stored in the location in this name.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The id of the entry group to create.
+ // The id must begin with a letter or underscore, contain only English
+ // letters, numbers and underscores, and be at most 64 characters.
+ EntryGroupId string `protobuf:"bytes,3,opt,name=entry_group_id,json=entryGroupId,proto3" json:"entry_group_id,omitempty"`
+ // The entry group to create. Defaults to an empty entry group.
+ EntryGroup *EntryGroup `protobuf:"bytes,2,opt,name=entry_group,json=entryGroup,proto3" json:"entry_group,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CreateEntryGroupRequest) Reset() { *m = CreateEntryGroupRequest{} }
+func (m *CreateEntryGroupRequest) String() string { return proto.CompactTextString(m) }
+func (*CreateEntryGroupRequest) ProtoMessage() {}
+func (*CreateEntryGroupRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{2}
+}
+
+func (m *CreateEntryGroupRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CreateEntryGroupRequest.Unmarshal(m, b)
+}
+func (m *CreateEntryGroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CreateEntryGroupRequest.Marshal(b, m, deterministic)
+}
+func (m *CreateEntryGroupRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CreateEntryGroupRequest.Merge(m, src)
+}
+func (m *CreateEntryGroupRequest) XXX_Size() int {
+ return xxx_messageInfo_CreateEntryGroupRequest.Size(m)
+}
+func (m *CreateEntryGroupRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_CreateEntryGroupRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CreateEntryGroupRequest proto.InternalMessageInfo
+
+func (m *CreateEntryGroupRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *CreateEntryGroupRequest) GetEntryGroupId() string {
+ if m != nil {
+ return m.EntryGroupId
+ }
+ return ""
+}
+
+func (m *CreateEntryGroupRequest) GetEntryGroup() *EntryGroup {
+ if m != nil {
+ return m.EntryGroup
+ }
+ return nil
+}
+
+// Request message for
+// [UpdateEntryGroup][google.cloud.datacatalog.v1.DataCatalog.UpdateEntryGroup].
+type UpdateEntryGroupRequest struct {
+ // Required. The updated entry group. "name" field must be set.
+ EntryGroup *EntryGroup `protobuf:"bytes,1,opt,name=entry_group,json=entryGroup,proto3" json:"entry_group,omitempty"`
+ // The fields to update on the entry group. If absent or empty, all modifiable
+ // fields are updated.
+ UpdateMask *field_mask.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UpdateEntryGroupRequest) Reset() { *m = UpdateEntryGroupRequest{} }
+func (m *UpdateEntryGroupRequest) String() string { return proto.CompactTextString(m) }
+func (*UpdateEntryGroupRequest) ProtoMessage() {}
+func (*UpdateEntryGroupRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{3}
+}
+
+func (m *UpdateEntryGroupRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UpdateEntryGroupRequest.Unmarshal(m, b)
+}
+func (m *UpdateEntryGroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UpdateEntryGroupRequest.Marshal(b, m, deterministic)
+}
+func (m *UpdateEntryGroupRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UpdateEntryGroupRequest.Merge(m, src)
+}
+func (m *UpdateEntryGroupRequest) XXX_Size() int {
+ return xxx_messageInfo_UpdateEntryGroupRequest.Size(m)
+}
+func (m *UpdateEntryGroupRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_UpdateEntryGroupRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UpdateEntryGroupRequest proto.InternalMessageInfo
+
+func (m *UpdateEntryGroupRequest) GetEntryGroup() *EntryGroup {
+ if m != nil {
+ return m.EntryGroup
+ }
+ return nil
+}
+
+func (m *UpdateEntryGroupRequest) GetUpdateMask() *field_mask.FieldMask {
+ if m != nil {
+ return m.UpdateMask
+ }
+ return nil
+}
+
+// Request message for
+// [GetEntryGroup][google.cloud.datacatalog.v1.DataCatalog.GetEntryGroup].
+type GetEntryGroupRequest struct {
+ // Required. The name of the entry group. For example,
+ // `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The fields to return. If not set or empty, all fields are returned.
+ ReadMask *field_mask.FieldMask `protobuf:"bytes,2,opt,name=read_mask,json=readMask,proto3" json:"read_mask,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *GetEntryGroupRequest) Reset() { *m = GetEntryGroupRequest{} }
+func (m *GetEntryGroupRequest) String() string { return proto.CompactTextString(m) }
+func (*GetEntryGroupRequest) ProtoMessage() {}
+func (*GetEntryGroupRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{4}
+}
+
+func (m *GetEntryGroupRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_GetEntryGroupRequest.Unmarshal(m, b)
+}
+func (m *GetEntryGroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_GetEntryGroupRequest.Marshal(b, m, deterministic)
+}
+func (m *GetEntryGroupRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_GetEntryGroupRequest.Merge(m, src)
+}
+func (m *GetEntryGroupRequest) XXX_Size() int {
+ return xxx_messageInfo_GetEntryGroupRequest.Size(m)
+}
+func (m *GetEntryGroupRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_GetEntryGroupRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetEntryGroupRequest proto.InternalMessageInfo
+
+func (m *GetEntryGroupRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *GetEntryGroupRequest) GetReadMask() *field_mask.FieldMask {
+ if m != nil {
+ return m.ReadMask
+ }
+ return nil
+}
+
+// Request message for
+// [DeleteEntryGroup][google.cloud.datacatalog.v1.DataCatalog.DeleteEntryGroup].
+type DeleteEntryGroupRequest struct {
+ // Required. The name of the entry group. For example,
+ // `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. If true, deletes all entries in the entry group.
+ Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeleteEntryGroupRequest) Reset() { *m = DeleteEntryGroupRequest{} }
+func (m *DeleteEntryGroupRequest) String() string { return proto.CompactTextString(m) }
+func (*DeleteEntryGroupRequest) ProtoMessage() {}
+func (*DeleteEntryGroupRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{5}
+}
+
+func (m *DeleteEntryGroupRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeleteEntryGroupRequest.Unmarshal(m, b)
+}
+func (m *DeleteEntryGroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeleteEntryGroupRequest.Marshal(b, m, deterministic)
+}
+func (m *DeleteEntryGroupRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeleteEntryGroupRequest.Merge(m, src)
+}
+func (m *DeleteEntryGroupRequest) XXX_Size() int {
+ return xxx_messageInfo_DeleteEntryGroupRequest.Size(m)
+}
+func (m *DeleteEntryGroupRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeleteEntryGroupRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeleteEntryGroupRequest proto.InternalMessageInfo
+
+func (m *DeleteEntryGroupRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *DeleteEntryGroupRequest) GetForce() bool {
+ if m != nil {
+ return m.Force
+ }
+ return false
+}
+
+// Request message for
+// [ListEntryGroups][google.cloud.datacatalog.v1.DataCatalog.ListEntryGroups].
+type ListEntryGroupsRequest struct {
+ // Required. The name of the location that contains the entry groups, which can be
+ // provided in URL format. Example:
+ //
+ // * projects/{project_id}/locations/{location}
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return. Default is 10. Max limit is 1000.
+ // Throws an invalid argument for `page_size > 1000`.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. Token that specifies which page is requested. If empty, the first page is
+ // returned.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ListEntryGroupsRequest) Reset() { *m = ListEntryGroupsRequest{} }
+func (m *ListEntryGroupsRequest) String() string { return proto.CompactTextString(m) }
+func (*ListEntryGroupsRequest) ProtoMessage() {}
+func (*ListEntryGroupsRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{6}
+}
+
+func (m *ListEntryGroupsRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ListEntryGroupsRequest.Unmarshal(m, b)
+}
+func (m *ListEntryGroupsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ListEntryGroupsRequest.Marshal(b, m, deterministic)
+}
+func (m *ListEntryGroupsRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ListEntryGroupsRequest.Merge(m, src)
+}
+func (m *ListEntryGroupsRequest) XXX_Size() int {
+ return xxx_messageInfo_ListEntryGroupsRequest.Size(m)
+}
+func (m *ListEntryGroupsRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_ListEntryGroupsRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ListEntryGroupsRequest proto.InternalMessageInfo
+
+func (m *ListEntryGroupsRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *ListEntryGroupsRequest) GetPageSize() int32 {
+ if m != nil {
+ return m.PageSize
+ }
+ return 0
+}
+
+func (m *ListEntryGroupsRequest) GetPageToken() string {
+ if m != nil {
+ return m.PageToken
+ }
+ return ""
+}
+
+// Response message for
+// [ListEntryGroups][google.cloud.datacatalog.v1.DataCatalog.ListEntryGroups].
+type ListEntryGroupsResponse struct {
+ // EntryGroup details.
+ EntryGroups []*EntryGroup `protobuf:"bytes,1,rep,name=entry_groups,json=entryGroups,proto3" json:"entry_groups,omitempty"`
+ // Token to retrieve the next page of results. It is set to empty if no items
+ // remain in results.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ListEntryGroupsResponse) Reset() { *m = ListEntryGroupsResponse{} }
+func (m *ListEntryGroupsResponse) String() string { return proto.CompactTextString(m) }
+func (*ListEntryGroupsResponse) ProtoMessage() {}
+func (*ListEntryGroupsResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{7}
+}
+
+func (m *ListEntryGroupsResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ListEntryGroupsResponse.Unmarshal(m, b)
+}
+func (m *ListEntryGroupsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ListEntryGroupsResponse.Marshal(b, m, deterministic)
+}
+func (m *ListEntryGroupsResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ListEntryGroupsResponse.Merge(m, src)
+}
+func (m *ListEntryGroupsResponse) XXX_Size() int {
+ return xxx_messageInfo_ListEntryGroupsResponse.Size(m)
+}
+func (m *ListEntryGroupsResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_ListEntryGroupsResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ListEntryGroupsResponse proto.InternalMessageInfo
+
+func (m *ListEntryGroupsResponse) GetEntryGroups() []*EntryGroup {
+ if m != nil {
+ return m.EntryGroups
+ }
+ return nil
+}
+
+func (m *ListEntryGroupsResponse) GetNextPageToken() string {
+ if m != nil {
+ return m.NextPageToken
+ }
+ return ""
+}
+
+// Request message for
+// [CreateEntry][google.cloud.datacatalog.v1.DataCatalog.CreateEntry].
+type CreateEntryRequest struct {
+ // Required. The name of the entry group this entry is in. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
+ //
+ // Note that this Entry and its child resources may not actually be stored in
+ // the location in this name.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The id of the entry to create.
+ EntryId string `protobuf:"bytes,3,opt,name=entry_id,json=entryId,proto3" json:"entry_id,omitempty"`
+ // Required. The entry to create.
+ Entry *Entry `protobuf:"bytes,2,opt,name=entry,proto3" json:"entry,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CreateEntryRequest) Reset() { *m = CreateEntryRequest{} }
+func (m *CreateEntryRequest) String() string { return proto.CompactTextString(m) }
+func (*CreateEntryRequest) ProtoMessage() {}
+func (*CreateEntryRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{8}
+}
+
+func (m *CreateEntryRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CreateEntryRequest.Unmarshal(m, b)
+}
+func (m *CreateEntryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CreateEntryRequest.Marshal(b, m, deterministic)
+}
+func (m *CreateEntryRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CreateEntryRequest.Merge(m, src)
+}
+func (m *CreateEntryRequest) XXX_Size() int {
+ return xxx_messageInfo_CreateEntryRequest.Size(m)
+}
+func (m *CreateEntryRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_CreateEntryRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CreateEntryRequest proto.InternalMessageInfo
+
+func (m *CreateEntryRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *CreateEntryRequest) GetEntryId() string {
+ if m != nil {
+ return m.EntryId
+ }
+ return ""
+}
+
+func (m *CreateEntryRequest) GetEntry() *Entry {
+ if m != nil {
+ return m.Entry
+ }
+ return nil
+}
+
+// Request message for
+// [UpdateEntry][google.cloud.datacatalog.v1.DataCatalog.UpdateEntry].
+type UpdateEntryRequest struct {
+ // Required. The updated entry. The "name" field must be set.
+ Entry *Entry `protobuf:"bytes,1,opt,name=entry,proto3" json:"entry,omitempty"`
+ // The fields to update on the entry. If absent or empty, all modifiable
+ // fields are updated.
+ //
+ // The following fields are modifiable:
+ // * For entries with type `DATA_STREAM`:
+ // * `schema`
+ // * For entries with type `FILESET`
+ // * `schema`
+ // * `display_name`
+ // * `description`
+ // * `gcs_fileset_spec`
+ // * `gcs_fileset_spec.file_patterns`
+ // * For entries with `user_specified_type`
+ // * `schema`
+ // * `display_name`
+ // * `description`
+ // * user_specified_type
+ // * user_specified_system
+ // * linked_resource
+ // * source_system_timestamps
+ UpdateMask *field_mask.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UpdateEntryRequest) Reset() { *m = UpdateEntryRequest{} }
+func (m *UpdateEntryRequest) String() string { return proto.CompactTextString(m) }
+func (*UpdateEntryRequest) ProtoMessage() {}
+func (*UpdateEntryRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{9}
+}
+
+func (m *UpdateEntryRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UpdateEntryRequest.Unmarshal(m, b)
+}
+func (m *UpdateEntryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UpdateEntryRequest.Marshal(b, m, deterministic)
+}
+func (m *UpdateEntryRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UpdateEntryRequest.Merge(m, src)
+}
+func (m *UpdateEntryRequest) XXX_Size() int {
+ return xxx_messageInfo_UpdateEntryRequest.Size(m)
+}
+func (m *UpdateEntryRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_UpdateEntryRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UpdateEntryRequest proto.InternalMessageInfo
+
+func (m *UpdateEntryRequest) GetEntry() *Entry {
+ if m != nil {
+ return m.Entry
+ }
+ return nil
+}
+
+func (m *UpdateEntryRequest) GetUpdateMask() *field_mask.FieldMask {
+ if m != nil {
+ return m.UpdateMask
+ }
+ return nil
+}
+
+// Request message for
+// [DeleteEntry][google.cloud.datacatalog.v1.DataCatalog.DeleteEntry].
+type DeleteEntryRequest struct {
+ // Required. The name of the entry. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeleteEntryRequest) Reset() { *m = DeleteEntryRequest{} }
+func (m *DeleteEntryRequest) String() string { return proto.CompactTextString(m) }
+func (*DeleteEntryRequest) ProtoMessage() {}
+func (*DeleteEntryRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{10}
+}
+
+func (m *DeleteEntryRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeleteEntryRequest.Unmarshal(m, b)
+}
+func (m *DeleteEntryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeleteEntryRequest.Marshal(b, m, deterministic)
+}
+func (m *DeleteEntryRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeleteEntryRequest.Merge(m, src)
+}
+func (m *DeleteEntryRequest) XXX_Size() int {
+ return xxx_messageInfo_DeleteEntryRequest.Size(m)
+}
+func (m *DeleteEntryRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeleteEntryRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeleteEntryRequest proto.InternalMessageInfo
+
+func (m *DeleteEntryRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+// Request message for
+// [GetEntry][google.cloud.datacatalog.v1.DataCatalog.GetEntry].
+type GetEntryRequest struct {
+ // Required. The name of the entry. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *GetEntryRequest) Reset() { *m = GetEntryRequest{} }
+func (m *GetEntryRequest) String() string { return proto.CompactTextString(m) }
+func (*GetEntryRequest) ProtoMessage() {}
+func (*GetEntryRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{11}
+}
+
+func (m *GetEntryRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_GetEntryRequest.Unmarshal(m, b)
+}
+func (m *GetEntryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_GetEntryRequest.Marshal(b, m, deterministic)
+}
+func (m *GetEntryRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_GetEntryRequest.Merge(m, src)
+}
+func (m *GetEntryRequest) XXX_Size() int {
+ return xxx_messageInfo_GetEntryRequest.Size(m)
+}
+func (m *GetEntryRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_GetEntryRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetEntryRequest proto.InternalMessageInfo
+
+func (m *GetEntryRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+// Request message for
+// [LookupEntry][google.cloud.datacatalog.v1.DataCatalog.LookupEntry].
+type LookupEntryRequest struct {
+ // Required. Represents either the Google Cloud Platform resource or SQL name
+ // for a Google Cloud Platform resource.
+ //
+ // Types that are valid to be assigned to TargetName:
+ // *LookupEntryRequest_LinkedResource
+ // *LookupEntryRequest_SqlResource
+ TargetName isLookupEntryRequest_TargetName `protobuf_oneof:"target_name"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *LookupEntryRequest) Reset() { *m = LookupEntryRequest{} }
+func (m *LookupEntryRequest) String() string { return proto.CompactTextString(m) }
+func (*LookupEntryRequest) ProtoMessage() {}
+func (*LookupEntryRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{12}
+}
+
+func (m *LookupEntryRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_LookupEntryRequest.Unmarshal(m, b)
+}
+func (m *LookupEntryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_LookupEntryRequest.Marshal(b, m, deterministic)
+}
+func (m *LookupEntryRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_LookupEntryRequest.Merge(m, src)
+}
+func (m *LookupEntryRequest) XXX_Size() int {
+ return xxx_messageInfo_LookupEntryRequest.Size(m)
+}
+func (m *LookupEntryRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_LookupEntryRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_LookupEntryRequest proto.InternalMessageInfo
+
+type isLookupEntryRequest_TargetName interface {
+ isLookupEntryRequest_TargetName()
+}
+
+type LookupEntryRequest_LinkedResource struct {
+ LinkedResource string `protobuf:"bytes,1,opt,name=linked_resource,json=linkedResource,proto3,oneof"`
+}
+
+type LookupEntryRequest_SqlResource struct {
+ SqlResource string `protobuf:"bytes,3,opt,name=sql_resource,json=sqlResource,proto3,oneof"`
+}
+
+func (*LookupEntryRequest_LinkedResource) isLookupEntryRequest_TargetName() {}
+
+func (*LookupEntryRequest_SqlResource) isLookupEntryRequest_TargetName() {}
+
+func (m *LookupEntryRequest) GetTargetName() isLookupEntryRequest_TargetName {
+ if m != nil {
+ return m.TargetName
+ }
+ return nil
+}
+
+func (m *LookupEntryRequest) GetLinkedResource() string {
+ if x, ok := m.GetTargetName().(*LookupEntryRequest_LinkedResource); ok {
+ return x.LinkedResource
+ }
+ return ""
+}
+
+func (m *LookupEntryRequest) GetSqlResource() string {
+ if x, ok := m.GetTargetName().(*LookupEntryRequest_SqlResource); ok {
+ return x.SqlResource
+ }
+ return ""
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*LookupEntryRequest) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*LookupEntryRequest_LinkedResource)(nil),
+ (*LookupEntryRequest_SqlResource)(nil),
+ }
+}
+
+// Entry Metadata.
+// A Data Catalog Entry resource represents another resource in Google
+// Cloud Platform (such as a BigQuery dataset or a Cloud Pub/Sub topic) or
+// outside of Google Cloud Platform. Clients can use the `linked_resource` field
+// in the Entry resource to refer to the original resource ID of the source
+// system.
+//
+// An Entry resource contains resource details, such as its schema. An Entry can
+// also be used to attach flexible metadata, such as a
+// [Tag][google.cloud.datacatalog.v1.Tag].
+type Entry struct {
+ // The Data Catalog resource name of the entry in URL format. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
+ //
+ // Note that this Entry and its child resources may not actually be stored in
+ // the location in this name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The resource this metadata entry refers to.
+ //
+ // For Google Cloud Platform resources, `linked_resource` is the [full name of
+ // the
+ // resource](https://cloud.google.com/apis/design/resource_names#full_resource_name).
+ // For example, the `linked_resource` for a table resource from BigQuery is:
+ //
+ // * //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId
+ //
+ // Output only when Entry is of type in the EntryType enum. For entries with
+ // user_specified_type, this field is optional and defaults to an empty
+ // string.
+ LinkedResource string `protobuf:"bytes,9,opt,name=linked_resource,json=linkedResource,proto3" json:"linked_resource,omitempty"`
+ // Required. Entry type.
+ //
+ // Types that are valid to be assigned to EntryType:
+ // *Entry_Type
+ // *Entry_UserSpecifiedType
+ EntryType isEntry_EntryType `protobuf_oneof:"entry_type"`
+ // The source system of the entry.
+ //
+ // Types that are valid to be assigned to System:
+ // *Entry_IntegratedSystem
+ // *Entry_UserSpecifiedSystem
+ System isEntry_System `protobuf_oneof:"system"`
+ // Type specification information.
+ //
+ // Types that are valid to be assigned to TypeSpec:
+ // *Entry_GcsFilesetSpec
+ // *Entry_BigqueryTableSpec
+ // *Entry_BigqueryDateShardedSpec
+ TypeSpec isEntry_TypeSpec `protobuf_oneof:"type_spec"`
+ // Display information such as title and description. A short name to identify
+ // the entry, for example, "Analytics Data - Jan 2011". Default value is an
+ // empty string.
+ DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Entry description, which can consist of several sentences or paragraphs
+ // that describe entry contents. Default value is an empty string.
+ Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
+ // Schema of the entry. An entry might not have any schema attached to it.
+ Schema *Schema `protobuf:"bytes,5,opt,name=schema,proto3" json:"schema,omitempty"`
+ // Timestamps about the underlying resource, not about this Data Catalog
+ // entry. Output only when Entry is of type in the EntryType enum. For entries
+ // with user_specified_type, this field is optional and defaults to an empty
+ // timestamp.
+ SourceSystemTimestamps *SystemTimestamps `protobuf:"bytes,7,opt,name=source_system_timestamps,json=sourceSystemTimestamps,proto3" json:"source_system_timestamps,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Entry) Reset() { *m = Entry{} }
+func (m *Entry) String() string { return proto.CompactTextString(m) }
+func (*Entry) ProtoMessage() {}
+func (*Entry) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{13}
+}
+
+func (m *Entry) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Entry.Unmarshal(m, b)
+}
+func (m *Entry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Entry.Marshal(b, m, deterministic)
+}
+func (m *Entry) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Entry.Merge(m, src)
+}
+func (m *Entry) XXX_Size() int {
+ return xxx_messageInfo_Entry.Size(m)
+}
+func (m *Entry) XXX_DiscardUnknown() {
+ xxx_messageInfo_Entry.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Entry proto.InternalMessageInfo
+
+func (m *Entry) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *Entry) GetLinkedResource() string {
+ if m != nil {
+ return m.LinkedResource
+ }
+ return ""
+}
+
+type isEntry_EntryType interface {
+ isEntry_EntryType()
+}
+
+type Entry_Type struct {
+ Type EntryType `protobuf:"varint,2,opt,name=type,proto3,enum=google.cloud.datacatalog.v1.EntryType,oneof"`
+}
+
+type Entry_UserSpecifiedType struct {
+ UserSpecifiedType string `protobuf:"bytes,16,opt,name=user_specified_type,json=userSpecifiedType,proto3,oneof"`
+}
+
+func (*Entry_Type) isEntry_EntryType() {}
+
+func (*Entry_UserSpecifiedType) isEntry_EntryType() {}
+
+func (m *Entry) GetEntryType() isEntry_EntryType {
+ if m != nil {
+ return m.EntryType
+ }
+ return nil
+}
+
+func (m *Entry) GetType() EntryType {
+ if x, ok := m.GetEntryType().(*Entry_Type); ok {
+ return x.Type
+ }
+ return EntryType_ENTRY_TYPE_UNSPECIFIED
+}
+
+func (m *Entry) GetUserSpecifiedType() string {
+ if x, ok := m.GetEntryType().(*Entry_UserSpecifiedType); ok {
+ return x.UserSpecifiedType
+ }
+ return ""
+}
+
+type isEntry_System interface {
+ isEntry_System()
+}
+
+type Entry_IntegratedSystem struct {
+ IntegratedSystem IntegratedSystem `protobuf:"varint,17,opt,name=integrated_system,json=integratedSystem,proto3,enum=google.cloud.datacatalog.v1.IntegratedSystem,oneof"`
+}
+
+type Entry_UserSpecifiedSystem struct {
+ UserSpecifiedSystem string `protobuf:"bytes,18,opt,name=user_specified_system,json=userSpecifiedSystem,proto3,oneof"`
+}
+
+func (*Entry_IntegratedSystem) isEntry_System() {}
+
+func (*Entry_UserSpecifiedSystem) isEntry_System() {}
+
+func (m *Entry) GetSystem() isEntry_System {
+ if m != nil {
+ return m.System
+ }
+ return nil
+}
+
+func (m *Entry) GetIntegratedSystem() IntegratedSystem {
+ if x, ok := m.GetSystem().(*Entry_IntegratedSystem); ok {
+ return x.IntegratedSystem
+ }
+ return IntegratedSystem_INTEGRATED_SYSTEM_UNSPECIFIED
+}
+
+func (m *Entry) GetUserSpecifiedSystem() string {
+ if x, ok := m.GetSystem().(*Entry_UserSpecifiedSystem); ok {
+ return x.UserSpecifiedSystem
+ }
+ return ""
+}
+
+type isEntry_TypeSpec interface {
+ isEntry_TypeSpec()
+}
+
+type Entry_GcsFilesetSpec struct {
+ GcsFilesetSpec *GcsFilesetSpec `protobuf:"bytes,6,opt,name=gcs_fileset_spec,json=gcsFilesetSpec,proto3,oneof"`
+}
+
+type Entry_BigqueryTableSpec struct {
+ BigqueryTableSpec *BigQueryTableSpec `protobuf:"bytes,12,opt,name=bigquery_table_spec,json=bigqueryTableSpec,proto3,oneof"`
+}
+
+type Entry_BigqueryDateShardedSpec struct {
+ BigqueryDateShardedSpec *BigQueryDateShardedSpec `protobuf:"bytes,15,opt,name=bigquery_date_sharded_spec,json=bigqueryDateShardedSpec,proto3,oneof"`
+}
+
+func (*Entry_GcsFilesetSpec) isEntry_TypeSpec() {}
+
+func (*Entry_BigqueryTableSpec) isEntry_TypeSpec() {}
+
+func (*Entry_BigqueryDateShardedSpec) isEntry_TypeSpec() {}
+
+func (m *Entry) GetTypeSpec() isEntry_TypeSpec {
+ if m != nil {
+ return m.TypeSpec
+ }
+ return nil
+}
+
+func (m *Entry) GetGcsFilesetSpec() *GcsFilesetSpec {
+ if x, ok := m.GetTypeSpec().(*Entry_GcsFilesetSpec); ok {
+ return x.GcsFilesetSpec
+ }
+ return nil
+}
+
+func (m *Entry) GetBigqueryTableSpec() *BigQueryTableSpec {
+ if x, ok := m.GetTypeSpec().(*Entry_BigqueryTableSpec); ok {
+ return x.BigqueryTableSpec
+ }
+ return nil
+}
+
+func (m *Entry) GetBigqueryDateShardedSpec() *BigQueryDateShardedSpec {
+ if x, ok := m.GetTypeSpec().(*Entry_BigqueryDateShardedSpec); ok {
+ return x.BigqueryDateShardedSpec
+ }
+ return nil
+}
+
+func (m *Entry) GetDisplayName() string {
+ if m != nil {
+ return m.DisplayName
+ }
+ return ""
+}
+
+func (m *Entry) GetDescription() string {
+ if m != nil {
+ return m.Description
+ }
+ return ""
+}
+
+func (m *Entry) GetSchema() *Schema {
+ if m != nil {
+ return m.Schema
+ }
+ return nil
+}
+
+func (m *Entry) GetSourceSystemTimestamps() *SystemTimestamps {
+ if m != nil {
+ return m.SourceSystemTimestamps
+ }
+ return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*Entry) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*Entry_Type)(nil),
+ (*Entry_UserSpecifiedType)(nil),
+ (*Entry_IntegratedSystem)(nil),
+ (*Entry_UserSpecifiedSystem)(nil),
+ (*Entry_GcsFilesetSpec)(nil),
+ (*Entry_BigqueryTableSpec)(nil),
+ (*Entry_BigqueryDateShardedSpec)(nil),
+ }
+}
+
+// EntryGroup Metadata.
+// An EntryGroup resource represents a logical grouping of zero or more
+// Data Catalog [Entry][google.cloud.datacatalog.v1.Entry] resources.
+type EntryGroup struct {
+ // The resource name of the entry group in URL format. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
+ //
+ // Note that this EntryGroup and its child resources may not actually be
+ // stored in the location in this name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // A short name to identify the entry group, for example,
+ // "analytics data - jan 2011". Default value is an empty string.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Entry group description, which can consist of several sentences or
+ // paragraphs that describe entry group contents. Default value is an empty
+ // string.
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ // Output only. Timestamps about this EntryGroup. Default value is empty timestamps.
+ DataCatalogTimestamps *SystemTimestamps `protobuf:"bytes,4,opt,name=data_catalog_timestamps,json=dataCatalogTimestamps,proto3" json:"data_catalog_timestamps,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *EntryGroup) Reset() { *m = EntryGroup{} }
+func (m *EntryGroup) String() string { return proto.CompactTextString(m) }
+func (*EntryGroup) ProtoMessage() {}
+func (*EntryGroup) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{14}
+}
+
+func (m *EntryGroup) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_EntryGroup.Unmarshal(m, b)
+}
+func (m *EntryGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_EntryGroup.Marshal(b, m, deterministic)
+}
+func (m *EntryGroup) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_EntryGroup.Merge(m, src)
+}
+func (m *EntryGroup) XXX_Size() int {
+ return xxx_messageInfo_EntryGroup.Size(m)
+}
+func (m *EntryGroup) XXX_DiscardUnknown() {
+ xxx_messageInfo_EntryGroup.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_EntryGroup proto.InternalMessageInfo
+
+func (m *EntryGroup) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *EntryGroup) GetDisplayName() string {
+ if m != nil {
+ return m.DisplayName
+ }
+ return ""
+}
+
+func (m *EntryGroup) GetDescription() string {
+ if m != nil {
+ return m.Description
+ }
+ return ""
+}
+
+func (m *EntryGroup) GetDataCatalogTimestamps() *SystemTimestamps {
+ if m != nil {
+ return m.DataCatalogTimestamps
+ }
+ return nil
+}
+
+// Request message for
+// [CreateTagTemplate][google.cloud.datacatalog.v1.DataCatalog.CreateTagTemplate].
+type CreateTagTemplateRequest struct {
+ // Required. The name of the project and the template location
+ // [region](/compute/docs/regions-zones/#available).
+ // NOTE: Currently, only the `us-central1 region` is supported.
+ //
+ // Example:
+ //
+ // * projects/{project_id}/locations/us-central1
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The id of the tag template to create.
+ TagTemplateId string `protobuf:"bytes,3,opt,name=tag_template_id,json=tagTemplateId,proto3" json:"tag_template_id,omitempty"`
+ // Required. The tag template to create.
+ TagTemplate *TagTemplate `protobuf:"bytes,2,opt,name=tag_template,json=tagTemplate,proto3" json:"tag_template,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CreateTagTemplateRequest) Reset() { *m = CreateTagTemplateRequest{} }
+func (m *CreateTagTemplateRequest) String() string { return proto.CompactTextString(m) }
+func (*CreateTagTemplateRequest) ProtoMessage() {}
+func (*CreateTagTemplateRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{15}
+}
+
+func (m *CreateTagTemplateRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CreateTagTemplateRequest.Unmarshal(m, b)
+}
+func (m *CreateTagTemplateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CreateTagTemplateRequest.Marshal(b, m, deterministic)
+}
+func (m *CreateTagTemplateRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CreateTagTemplateRequest.Merge(m, src)
+}
+func (m *CreateTagTemplateRequest) XXX_Size() int {
+ return xxx_messageInfo_CreateTagTemplateRequest.Size(m)
+}
+func (m *CreateTagTemplateRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_CreateTagTemplateRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CreateTagTemplateRequest proto.InternalMessageInfo
+
+func (m *CreateTagTemplateRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *CreateTagTemplateRequest) GetTagTemplateId() string {
+ if m != nil {
+ return m.TagTemplateId
+ }
+ return ""
+}
+
+func (m *CreateTagTemplateRequest) GetTagTemplate() *TagTemplate {
+ if m != nil {
+ return m.TagTemplate
+ }
+ return nil
+}
+
+// Request message for
+// [GetTagTemplate][google.cloud.datacatalog.v1.DataCatalog.GetTagTemplate].
+type GetTagTemplateRequest struct {
+ // Required. The name of the tag template. Example:
+ //
+ // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *GetTagTemplateRequest) Reset() { *m = GetTagTemplateRequest{} }
+func (m *GetTagTemplateRequest) String() string { return proto.CompactTextString(m) }
+func (*GetTagTemplateRequest) ProtoMessage() {}
+func (*GetTagTemplateRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{16}
+}
+
+func (m *GetTagTemplateRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_GetTagTemplateRequest.Unmarshal(m, b)
+}
+func (m *GetTagTemplateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_GetTagTemplateRequest.Marshal(b, m, deterministic)
+}
+func (m *GetTagTemplateRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_GetTagTemplateRequest.Merge(m, src)
+}
+func (m *GetTagTemplateRequest) XXX_Size() int {
+ return xxx_messageInfo_GetTagTemplateRequest.Size(m)
+}
+func (m *GetTagTemplateRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_GetTagTemplateRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetTagTemplateRequest proto.InternalMessageInfo
+
+func (m *GetTagTemplateRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+// Request message for
+// [UpdateTagTemplate][google.cloud.datacatalog.v1.DataCatalog.UpdateTagTemplate].
+type UpdateTagTemplateRequest struct {
+ // Required. The template to update. The "name" field must be set.
+ TagTemplate *TagTemplate `protobuf:"bytes,1,opt,name=tag_template,json=tagTemplate,proto3" json:"tag_template,omitempty"`
+ // The field mask specifies the parts of the template to overwrite.
+ //
+ // Allowed fields:
+ //
+ // * `display_name`
+ //
+ // If absent or empty, all of the allowed fields above will be updated.
+ UpdateMask *field_mask.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UpdateTagTemplateRequest) Reset() { *m = UpdateTagTemplateRequest{} }
+func (m *UpdateTagTemplateRequest) String() string { return proto.CompactTextString(m) }
+func (*UpdateTagTemplateRequest) ProtoMessage() {}
+func (*UpdateTagTemplateRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{17}
+}
+
+func (m *UpdateTagTemplateRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UpdateTagTemplateRequest.Unmarshal(m, b)
+}
+func (m *UpdateTagTemplateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UpdateTagTemplateRequest.Marshal(b, m, deterministic)
+}
+func (m *UpdateTagTemplateRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UpdateTagTemplateRequest.Merge(m, src)
+}
+func (m *UpdateTagTemplateRequest) XXX_Size() int {
+ return xxx_messageInfo_UpdateTagTemplateRequest.Size(m)
+}
+func (m *UpdateTagTemplateRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_UpdateTagTemplateRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UpdateTagTemplateRequest proto.InternalMessageInfo
+
+func (m *UpdateTagTemplateRequest) GetTagTemplate() *TagTemplate {
+ if m != nil {
+ return m.TagTemplate
+ }
+ return nil
+}
+
+func (m *UpdateTagTemplateRequest) GetUpdateMask() *field_mask.FieldMask {
+ if m != nil {
+ return m.UpdateMask
+ }
+ return nil
+}
+
+// Request message for
+// [DeleteTagTemplate][google.cloud.datacatalog.v1.DataCatalog.DeleteTagTemplate].
+type DeleteTagTemplateRequest struct {
+ // Required. The name of the tag template to delete. Example:
+ //
+ // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. Currently, this field must always be set to `true`.
+ // This confirms the deletion of any possible tags using this template.
+ // `force = false` will be supported in the future.
+ Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeleteTagTemplateRequest) Reset() { *m = DeleteTagTemplateRequest{} }
+func (m *DeleteTagTemplateRequest) String() string { return proto.CompactTextString(m) }
+func (*DeleteTagTemplateRequest) ProtoMessage() {}
+func (*DeleteTagTemplateRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{18}
+}
+
+func (m *DeleteTagTemplateRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeleteTagTemplateRequest.Unmarshal(m, b)
+}
+func (m *DeleteTagTemplateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeleteTagTemplateRequest.Marshal(b, m, deterministic)
+}
+func (m *DeleteTagTemplateRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeleteTagTemplateRequest.Merge(m, src)
+}
+func (m *DeleteTagTemplateRequest) XXX_Size() int {
+ return xxx_messageInfo_DeleteTagTemplateRequest.Size(m)
+}
+func (m *DeleteTagTemplateRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeleteTagTemplateRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeleteTagTemplateRequest proto.InternalMessageInfo
+
+func (m *DeleteTagTemplateRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *DeleteTagTemplateRequest) GetForce() bool {
+ if m != nil {
+ return m.Force
+ }
+ return false
+}
+
+// Request message for
+// [CreateTag][google.cloud.datacatalog.v1.DataCatalog.CreateTag].
+type CreateTagRequest struct {
+ // Required. The name of the resource to attach this tag to. Tags can be attached to
+ // Entries. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
+ //
+ // Note that this Tag and its child resources may not actually be stored in
+ // the location in this name.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The tag to create.
+ Tag *Tag `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CreateTagRequest) Reset() { *m = CreateTagRequest{} }
+func (m *CreateTagRequest) String() string { return proto.CompactTextString(m) }
+func (*CreateTagRequest) ProtoMessage() {}
+func (*CreateTagRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{19}
+}
+
+func (m *CreateTagRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CreateTagRequest.Unmarshal(m, b)
+}
+func (m *CreateTagRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CreateTagRequest.Marshal(b, m, deterministic)
+}
+func (m *CreateTagRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CreateTagRequest.Merge(m, src)
+}
+func (m *CreateTagRequest) XXX_Size() int {
+ return xxx_messageInfo_CreateTagRequest.Size(m)
+}
+func (m *CreateTagRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_CreateTagRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CreateTagRequest proto.InternalMessageInfo
+
+func (m *CreateTagRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *CreateTagRequest) GetTag() *Tag {
+ if m != nil {
+ return m.Tag
+ }
+ return nil
+}
+
+// Request message for
+// [UpdateTag][google.cloud.datacatalog.v1.DataCatalog.UpdateTag].
+type UpdateTagRequest struct {
+ // Required. The updated tag. The "name" field must be set.
+ Tag *Tag `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
+ // The fields to update on the Tag. If absent or empty, all modifiable fields
+ // are updated. Currently the only modifiable field is the field `fields`.
+ UpdateMask *field_mask.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UpdateTagRequest) Reset() { *m = UpdateTagRequest{} }
+func (m *UpdateTagRequest) String() string { return proto.CompactTextString(m) }
+func (*UpdateTagRequest) ProtoMessage() {}
+func (*UpdateTagRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{20}
+}
+
+func (m *UpdateTagRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UpdateTagRequest.Unmarshal(m, b)
+}
+func (m *UpdateTagRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UpdateTagRequest.Marshal(b, m, deterministic)
+}
+func (m *UpdateTagRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UpdateTagRequest.Merge(m, src)
+}
+func (m *UpdateTagRequest) XXX_Size() int {
+ return xxx_messageInfo_UpdateTagRequest.Size(m)
+}
+func (m *UpdateTagRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_UpdateTagRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UpdateTagRequest proto.InternalMessageInfo
+
+func (m *UpdateTagRequest) GetTag() *Tag {
+ if m != nil {
+ return m.Tag
+ }
+ return nil
+}
+
+func (m *UpdateTagRequest) GetUpdateMask() *field_mask.FieldMask {
+ if m != nil {
+ return m.UpdateMask
+ }
+ return nil
+}
+
+// Request message for
+// [DeleteTag][google.cloud.datacatalog.v1.DataCatalog.DeleteTag].
+type DeleteTagRequest struct {
+ // Required. The name of the tag to delete. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id}
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeleteTagRequest) Reset() { *m = DeleteTagRequest{} }
+func (m *DeleteTagRequest) String() string { return proto.CompactTextString(m) }
+func (*DeleteTagRequest) ProtoMessage() {}
+func (*DeleteTagRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{21}
+}
+
+func (m *DeleteTagRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeleteTagRequest.Unmarshal(m, b)
+}
+func (m *DeleteTagRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeleteTagRequest.Marshal(b, m, deterministic)
+}
+func (m *DeleteTagRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeleteTagRequest.Merge(m, src)
+}
+func (m *DeleteTagRequest) XXX_Size() int {
+ return xxx_messageInfo_DeleteTagRequest.Size(m)
+}
+func (m *DeleteTagRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeleteTagRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeleteTagRequest proto.InternalMessageInfo
+
+func (m *DeleteTagRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+// Request message for
+// [CreateTagTemplateField][google.cloud.datacatalog.v1.DataCatalog.CreateTagTemplateField].
+type CreateTagTemplateFieldRequest struct {
+ // Required. The name of the project and the template location
+ // [region](/compute/docs/regions-zones/#available).
+ // NOTE: Currently, only the `us-central1 region` is supported.
+ //
+ // Example:
+ //
+ // * projects/{project_id}/locations/us-central1/tagTemplates/{tag_template_id}
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The ID of the tag template field to create.
+ // Field ids can contain letters (both uppercase and lowercase), numbers
+ // (0-9), underscores (_) and dashes (-). Field IDs must be at least 1
+ // character long and at most 128 characters long. Field IDs must also be
+ // unique within their template.
+ TagTemplateFieldId string `protobuf:"bytes,2,opt,name=tag_template_field_id,json=tagTemplateFieldId,proto3" json:"tag_template_field_id,omitempty"`
+ // Required. The tag template field to create.
+ TagTemplateField *TagTemplateField `protobuf:"bytes,3,opt,name=tag_template_field,json=tagTemplateField,proto3" json:"tag_template_field,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CreateTagTemplateFieldRequest) Reset() { *m = CreateTagTemplateFieldRequest{} }
+func (m *CreateTagTemplateFieldRequest) String() string { return proto.CompactTextString(m) }
+func (*CreateTagTemplateFieldRequest) ProtoMessage() {}
+func (*CreateTagTemplateFieldRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{22}
+}
+
+func (m *CreateTagTemplateFieldRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CreateTagTemplateFieldRequest.Unmarshal(m, b)
+}
+func (m *CreateTagTemplateFieldRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CreateTagTemplateFieldRequest.Marshal(b, m, deterministic)
+}
+func (m *CreateTagTemplateFieldRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CreateTagTemplateFieldRequest.Merge(m, src)
+}
+func (m *CreateTagTemplateFieldRequest) XXX_Size() int {
+ return xxx_messageInfo_CreateTagTemplateFieldRequest.Size(m)
+}
+func (m *CreateTagTemplateFieldRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_CreateTagTemplateFieldRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CreateTagTemplateFieldRequest proto.InternalMessageInfo
+
+func (m *CreateTagTemplateFieldRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *CreateTagTemplateFieldRequest) GetTagTemplateFieldId() string {
+ if m != nil {
+ return m.TagTemplateFieldId
+ }
+ return ""
+}
+
+func (m *CreateTagTemplateFieldRequest) GetTagTemplateField() *TagTemplateField {
+ if m != nil {
+ return m.TagTemplateField
+ }
+ return nil
+}
+
+// Request message for
+// [UpdateTagTemplateField][google.cloud.datacatalog.v1.DataCatalog.UpdateTagTemplateField].
+type UpdateTagTemplateFieldRequest struct {
+ // Required. The name of the tag template field. Example:
+ //
+ // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The template to update.
+ TagTemplateField *TagTemplateField `protobuf:"bytes,2,opt,name=tag_template_field,json=tagTemplateField,proto3" json:"tag_template_field,omitempty"`
+ // Optional. The field mask specifies the parts of the template to be updated.
+ // Allowed fields:
+ //
+ // * `display_name`
+ // * `type.enum_type`
+ // * `is_required`
+ //
+ // If `update_mask` is not set or empty, all of the allowed fields above will
+ // be updated.
+ //
+ // When updating an enum type, the provided values will be merged with the
+ // existing values. Therefore, enum values can only be added, existing enum
+ // values cannot be deleted nor renamed. Updating a template field from
+ // optional to required is NOT allowed.
+ UpdateMask *field_mask.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UpdateTagTemplateFieldRequest) Reset() { *m = UpdateTagTemplateFieldRequest{} }
+func (m *UpdateTagTemplateFieldRequest) String() string { return proto.CompactTextString(m) }
+func (*UpdateTagTemplateFieldRequest) ProtoMessage() {}
+func (*UpdateTagTemplateFieldRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{23}
+}
+
+func (m *UpdateTagTemplateFieldRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UpdateTagTemplateFieldRequest.Unmarshal(m, b)
+}
+func (m *UpdateTagTemplateFieldRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UpdateTagTemplateFieldRequest.Marshal(b, m, deterministic)
+}
+func (m *UpdateTagTemplateFieldRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UpdateTagTemplateFieldRequest.Merge(m, src)
+}
+func (m *UpdateTagTemplateFieldRequest) XXX_Size() int {
+ return xxx_messageInfo_UpdateTagTemplateFieldRequest.Size(m)
+}
+func (m *UpdateTagTemplateFieldRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_UpdateTagTemplateFieldRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UpdateTagTemplateFieldRequest proto.InternalMessageInfo
+
+func (m *UpdateTagTemplateFieldRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *UpdateTagTemplateFieldRequest) GetTagTemplateField() *TagTemplateField {
+ if m != nil {
+ return m.TagTemplateField
+ }
+ return nil
+}
+
+func (m *UpdateTagTemplateFieldRequest) GetUpdateMask() *field_mask.FieldMask {
+ if m != nil {
+ return m.UpdateMask
+ }
+ return nil
+}
+
+// Request message for
+// [RenameTagTemplateField][google.cloud.datacatalog.v1.DataCatalog.RenameTagTemplateField].
+type RenameTagTemplateFieldRequest struct {
+ // Required. The name of the tag template. Example:
+ //
+ // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The new ID of this tag template field. For example, `my_new_field`.
+ NewTagTemplateFieldId string `protobuf:"bytes,2,opt,name=new_tag_template_field_id,json=newTagTemplateFieldId,proto3" json:"new_tag_template_field_id,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *RenameTagTemplateFieldRequest) Reset() { *m = RenameTagTemplateFieldRequest{} }
+func (m *RenameTagTemplateFieldRequest) String() string { return proto.CompactTextString(m) }
+func (*RenameTagTemplateFieldRequest) ProtoMessage() {}
+func (*RenameTagTemplateFieldRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{24}
+}
+
+func (m *RenameTagTemplateFieldRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_RenameTagTemplateFieldRequest.Unmarshal(m, b)
+}
+func (m *RenameTagTemplateFieldRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_RenameTagTemplateFieldRequest.Marshal(b, m, deterministic)
+}
+func (m *RenameTagTemplateFieldRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_RenameTagTemplateFieldRequest.Merge(m, src)
+}
+func (m *RenameTagTemplateFieldRequest) XXX_Size() int {
+ return xxx_messageInfo_RenameTagTemplateFieldRequest.Size(m)
+}
+func (m *RenameTagTemplateFieldRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_RenameTagTemplateFieldRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_RenameTagTemplateFieldRequest proto.InternalMessageInfo
+
+func (m *RenameTagTemplateFieldRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *RenameTagTemplateFieldRequest) GetNewTagTemplateFieldId() string {
+ if m != nil {
+ return m.NewTagTemplateFieldId
+ }
+ return ""
+}
+
+// Request message for
+// [DeleteTagTemplateField][google.cloud.datacatalog.v1.DataCatalog.DeleteTagTemplateField].
+type DeleteTagTemplateFieldRequest struct {
+ // Required. The name of the tag template field to delete. Example:
+ //
+ // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. Currently, this field must always be set to `true`.
+ // This confirms the deletion of this field from any tags using this field.
+ // `force = false` will be supported in the future.
+ Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeleteTagTemplateFieldRequest) Reset() { *m = DeleteTagTemplateFieldRequest{} }
+func (m *DeleteTagTemplateFieldRequest) String() string { return proto.CompactTextString(m) }
+func (*DeleteTagTemplateFieldRequest) ProtoMessage() {}
+func (*DeleteTagTemplateFieldRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{25}
+}
+
+func (m *DeleteTagTemplateFieldRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeleteTagTemplateFieldRequest.Unmarshal(m, b)
+}
+func (m *DeleteTagTemplateFieldRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeleteTagTemplateFieldRequest.Marshal(b, m, deterministic)
+}
+func (m *DeleteTagTemplateFieldRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeleteTagTemplateFieldRequest.Merge(m, src)
+}
+func (m *DeleteTagTemplateFieldRequest) XXX_Size() int {
+ return xxx_messageInfo_DeleteTagTemplateFieldRequest.Size(m)
+}
+func (m *DeleteTagTemplateFieldRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeleteTagTemplateFieldRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeleteTagTemplateFieldRequest proto.InternalMessageInfo
+
+func (m *DeleteTagTemplateFieldRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *DeleteTagTemplateFieldRequest) GetForce() bool {
+ if m != nil {
+ return m.Force
+ }
+ return false
+}
+
+// Request message for
+// [ListTags][google.cloud.datacatalog.v1.DataCatalog.ListTags].
+type ListTagsRequest struct {
+ // Required. The name of the Data Catalog resource to list the tags of. The resource
+ // could be an [Entry][google.cloud.datacatalog.v1.Entry] or an
+ // [EntryGroup][google.cloud.datacatalog.v1.EntryGroup].
+ //
+ // Examples:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of tags to return. Default is 10. Max limit is 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Token that specifies which page is requested. If empty, the first page is
+ // returned.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ListTagsRequest) Reset() { *m = ListTagsRequest{} }
+func (m *ListTagsRequest) String() string { return proto.CompactTextString(m) }
+func (*ListTagsRequest) ProtoMessage() {}
+func (*ListTagsRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{26}
+}
+
+func (m *ListTagsRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ListTagsRequest.Unmarshal(m, b)
+}
+func (m *ListTagsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ListTagsRequest.Marshal(b, m, deterministic)
+}
+func (m *ListTagsRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ListTagsRequest.Merge(m, src)
+}
+func (m *ListTagsRequest) XXX_Size() int {
+ return xxx_messageInfo_ListTagsRequest.Size(m)
+}
+func (m *ListTagsRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_ListTagsRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ListTagsRequest proto.InternalMessageInfo
+
+func (m *ListTagsRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *ListTagsRequest) GetPageSize() int32 {
+ if m != nil {
+ return m.PageSize
+ }
+ return 0
+}
+
+func (m *ListTagsRequest) GetPageToken() string {
+ if m != nil {
+ return m.PageToken
+ }
+ return ""
+}
+
+// Response message for
+// [ListTags][google.cloud.datacatalog.v1.DataCatalog.ListTags].
+type ListTagsResponse struct {
+ // [Tag][google.cloud.datacatalog.v1.Tag] details.
+ Tags []*Tag `protobuf:"bytes,1,rep,name=tags,proto3" json:"tags,omitempty"`
+ // Token to retrieve the next page of results. It is set to empty if no items
+ // remain in results.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ListTagsResponse) Reset() { *m = ListTagsResponse{} }
+func (m *ListTagsResponse) String() string { return proto.CompactTextString(m) }
+func (*ListTagsResponse) ProtoMessage() {}
+func (*ListTagsResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{27}
+}
+
+func (m *ListTagsResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ListTagsResponse.Unmarshal(m, b)
+}
+func (m *ListTagsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ListTagsResponse.Marshal(b, m, deterministic)
+}
+func (m *ListTagsResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ListTagsResponse.Merge(m, src)
+}
+func (m *ListTagsResponse) XXX_Size() int {
+ return xxx_messageInfo_ListTagsResponse.Size(m)
+}
+func (m *ListTagsResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_ListTagsResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ListTagsResponse proto.InternalMessageInfo
+
+func (m *ListTagsResponse) GetTags() []*Tag {
+ if m != nil {
+ return m.Tags
+ }
+ return nil
+}
+
+func (m *ListTagsResponse) GetNextPageToken() string {
+ if m != nil {
+ return m.NextPageToken
+ }
+ return ""
+}
+
+// Request message for
+// [ListEntries][google.cloud.datacatalog.v1.DataCatalog.ListEntries].
+type ListEntriesRequest struct {
+ // Required. The name of the entry group that contains the entries, which can
+ // be provided in URL format. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of items to return. Default is 10. Max limit is 1000.
+ // Throws an invalid argument for `page_size > 1000`.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Token that specifies which page is requested. If empty, the first page is
+ // returned.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // The fields to return for each Entry. If not set or empty, all
+ // fields are returned.
+ // For example, setting read_mask to contain only one path "name" will cause
+ // ListEntries to return a list of Entries with only "name" field.
+ ReadMask *field_mask.FieldMask `protobuf:"bytes,4,opt,name=read_mask,json=readMask,proto3" json:"read_mask,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ListEntriesRequest) Reset() { *m = ListEntriesRequest{} }
+func (m *ListEntriesRequest) String() string { return proto.CompactTextString(m) }
+func (*ListEntriesRequest) ProtoMessage() {}
+func (*ListEntriesRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{28}
+}
+
+func (m *ListEntriesRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ListEntriesRequest.Unmarshal(m, b)
+}
+func (m *ListEntriesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ListEntriesRequest.Marshal(b, m, deterministic)
+}
+func (m *ListEntriesRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ListEntriesRequest.Merge(m, src)
+}
+func (m *ListEntriesRequest) XXX_Size() int {
+ return xxx_messageInfo_ListEntriesRequest.Size(m)
+}
+func (m *ListEntriesRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_ListEntriesRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ListEntriesRequest proto.InternalMessageInfo
+
+func (m *ListEntriesRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *ListEntriesRequest) GetPageSize() int32 {
+ if m != nil {
+ return m.PageSize
+ }
+ return 0
+}
+
+func (m *ListEntriesRequest) GetPageToken() string {
+ if m != nil {
+ return m.PageToken
+ }
+ return ""
+}
+
+func (m *ListEntriesRequest) GetReadMask() *field_mask.FieldMask {
+ if m != nil {
+ return m.ReadMask
+ }
+ return nil
+}
+
+// Response message for
+// [ListEntries][google.cloud.datacatalog.v1.DataCatalog.ListEntries].
+type ListEntriesResponse struct {
+ // Entry details.
+ Entries []*Entry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
+ // Token to retrieve the next page of results. It is set to empty if no items
+ // remain in results.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ListEntriesResponse) Reset() { *m = ListEntriesResponse{} }
+func (m *ListEntriesResponse) String() string { return proto.CompactTextString(m) }
+func (*ListEntriesResponse) ProtoMessage() {}
+func (*ListEntriesResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_432e04443b4c65a3, []int{29}
+}
+
+func (m *ListEntriesResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ListEntriesResponse.Unmarshal(m, b)
+}
+func (m *ListEntriesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ListEntriesResponse.Marshal(b, m, deterministic)
+}
+func (m *ListEntriesResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ListEntriesResponse.Merge(m, src)
+}
+func (m *ListEntriesResponse) XXX_Size() int {
+ return xxx_messageInfo_ListEntriesResponse.Size(m)
+}
+func (m *ListEntriesResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_ListEntriesResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ListEntriesResponse proto.InternalMessageInfo
+
+func (m *ListEntriesResponse) GetEntries() []*Entry {
+ if m != nil {
+ return m.Entries
+ }
+ return nil
+}
+
+func (m *ListEntriesResponse) GetNextPageToken() string {
+ if m != nil {
+ return m.NextPageToken
+ }
+ return ""
+}
+
+func init() {
+ proto.RegisterEnum("google.cloud.datacatalog.v1.EntryType", EntryType_name, EntryType_value)
+ proto.RegisterType((*SearchCatalogRequest)(nil), "google.cloud.datacatalog.v1.SearchCatalogRequest")
+ proto.RegisterType((*SearchCatalogRequest_Scope)(nil), "google.cloud.datacatalog.v1.SearchCatalogRequest.Scope")
+ proto.RegisterType((*SearchCatalogResponse)(nil), "google.cloud.datacatalog.v1.SearchCatalogResponse")
+ proto.RegisterType((*CreateEntryGroupRequest)(nil), "google.cloud.datacatalog.v1.CreateEntryGroupRequest")
+ proto.RegisterType((*UpdateEntryGroupRequest)(nil), "google.cloud.datacatalog.v1.UpdateEntryGroupRequest")
+ proto.RegisterType((*GetEntryGroupRequest)(nil), "google.cloud.datacatalog.v1.GetEntryGroupRequest")
+ proto.RegisterType((*DeleteEntryGroupRequest)(nil), "google.cloud.datacatalog.v1.DeleteEntryGroupRequest")
+ proto.RegisterType((*ListEntryGroupsRequest)(nil), "google.cloud.datacatalog.v1.ListEntryGroupsRequest")
+ proto.RegisterType((*ListEntryGroupsResponse)(nil), "google.cloud.datacatalog.v1.ListEntryGroupsResponse")
+ proto.RegisterType((*CreateEntryRequest)(nil), "google.cloud.datacatalog.v1.CreateEntryRequest")
+ proto.RegisterType((*UpdateEntryRequest)(nil), "google.cloud.datacatalog.v1.UpdateEntryRequest")
+ proto.RegisterType((*DeleteEntryRequest)(nil), "google.cloud.datacatalog.v1.DeleteEntryRequest")
+ proto.RegisterType((*GetEntryRequest)(nil), "google.cloud.datacatalog.v1.GetEntryRequest")
+ proto.RegisterType((*LookupEntryRequest)(nil), "google.cloud.datacatalog.v1.LookupEntryRequest")
+ proto.RegisterType((*Entry)(nil), "google.cloud.datacatalog.v1.Entry")
+ proto.RegisterType((*EntryGroup)(nil), "google.cloud.datacatalog.v1.EntryGroup")
+ proto.RegisterType((*CreateTagTemplateRequest)(nil), "google.cloud.datacatalog.v1.CreateTagTemplateRequest")
+ proto.RegisterType((*GetTagTemplateRequest)(nil), "google.cloud.datacatalog.v1.GetTagTemplateRequest")
+ proto.RegisterType((*UpdateTagTemplateRequest)(nil), "google.cloud.datacatalog.v1.UpdateTagTemplateRequest")
+ proto.RegisterType((*DeleteTagTemplateRequest)(nil), "google.cloud.datacatalog.v1.DeleteTagTemplateRequest")
+ proto.RegisterType((*CreateTagRequest)(nil), "google.cloud.datacatalog.v1.CreateTagRequest")
+ proto.RegisterType((*UpdateTagRequest)(nil), "google.cloud.datacatalog.v1.UpdateTagRequest")
+ proto.RegisterType((*DeleteTagRequest)(nil), "google.cloud.datacatalog.v1.DeleteTagRequest")
+ proto.RegisterType((*CreateTagTemplateFieldRequest)(nil), "google.cloud.datacatalog.v1.CreateTagTemplateFieldRequest")
+ proto.RegisterType((*UpdateTagTemplateFieldRequest)(nil), "google.cloud.datacatalog.v1.UpdateTagTemplateFieldRequest")
+ proto.RegisterType((*RenameTagTemplateFieldRequest)(nil), "google.cloud.datacatalog.v1.RenameTagTemplateFieldRequest")
+ proto.RegisterType((*DeleteTagTemplateFieldRequest)(nil), "google.cloud.datacatalog.v1.DeleteTagTemplateFieldRequest")
+ proto.RegisterType((*ListTagsRequest)(nil), "google.cloud.datacatalog.v1.ListTagsRequest")
+ proto.RegisterType((*ListTagsResponse)(nil), "google.cloud.datacatalog.v1.ListTagsResponse")
+ proto.RegisterType((*ListEntriesRequest)(nil), "google.cloud.datacatalog.v1.ListEntriesRequest")
+ proto.RegisterType((*ListEntriesResponse)(nil), "google.cloud.datacatalog.v1.ListEntriesResponse")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/datacatalog/v1/datacatalog.proto", fileDescriptor_432e04443b4c65a3)
+}
+
+var fileDescriptor_432e04443b4c65a3 = []byte{
+ // 2995 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x5a, 0x4d, 0x6c, 0x1b, 0xc7,
+ 0x15, 0xce, 0x50, 0x96, 0x2d, 0x3d, 0xca, 0x96, 0x34, 0x8e, 0x24, 0x9a, 0xa9, 0x1d, 0x65, 0x8d,
+ 0x3a, 0x0a, 0x6d, 0x93, 0x36, 0xe3, 0xe6, 0x87, 0x8e, 0x1d, 0xaf, 0x22, 0xea, 0xc7, 0xb5, 0x2d,
+ 0x65, 0xc5, 0xa0, 0x88, 0x73, 0x60, 0x56, 0xe4, 0x78, 0xb5, 0x36, 0xc9, 0x5d, 0xef, 0x2e, 0xe3,
+ 0x28, 0x8e, 0x0b, 0x34, 0x05, 0xfa, 0x83, 0xc4, 0x45, 0xd0, 0x9f, 0x4b, 0x0b, 0x14, 0x01, 0x8a,
+ 0xb6, 0xc8, 0xa1, 0x28, 0x8a, 0xde, 0x8a, 0xa0, 0xe8, 0xa1, 0xa7, 0x1e, 0x8a, 0xa2, 0x45, 0x2f,
+ 0x2c, 0x10, 0xa4, 0x7f, 0x97, 0xf4, 0xd2, 0xa2, 0x28, 0xfa, 0x73, 0x2a, 0x76, 0x66, 0x96, 0x9c,
+ 0xdd, 0x25, 0xb9, 0xbb, 0x92, 0x73, 0x92, 0x38, 0xf3, 0xe6, 0xcd, 0x7b, 0xdf, 0xbc, 0xf7, 0xe6,
+ 0xcd, 0x47, 0xc2, 0x69, 0xcd, 0x30, 0xb4, 0x06, 0x29, 0xd4, 0x1a, 0x46, 0xbb, 0x5e, 0xa8, 0xab,
+ 0x8e, 0x5a, 0x53, 0x1d, 0xb5, 0x61, 0x68, 0x85, 0xd7, 0xce, 0x8a, 0x1f, 0xf3, 0xa6, 0x65, 0x38,
+ 0x06, 0x7e, 0x84, 0x89, 0xe7, 0xa9, 0x78, 0x5e, 0x9c, 0x7f, 0xed, 0x6c, 0xf6, 0x53, 0x5c, 0x97,
+ 0x6a, 0xea, 0x05, 0xb5, 0xd5, 0x32, 0x1c, 0xd5, 0xd1, 0x8d, 0x96, 0xcd, 0x96, 0x66, 0xe7, 0x84,
+ 0xd9, 0x5a, 0x43, 0x27, 0x2d, 0x87, 0x4f, 0x3c, 0x2a, 0x4c, 0xdc, 0xd0, 0x49, 0xa3, 0x5e, 0xdd,
+ 0x22, 0xdb, 0xea, 0x6b, 0xba, 0x61, 0x71, 0x81, 0x23, 0x82, 0x80, 0x45, 0x6c, 0xa3, 0x6d, 0xd5,
+ 0x08, 0x9f, 0x5a, 0x18, 0x66, 0x7e, 0xcd, 0x68, 0x36, 0x8d, 0x16, 0x97, 0x2c, 0x0e, 0x93, 0xd4,
+ 0x6a, 0x76, 0xf5, 0x86, 0xde, 0x20, 0x36, 0x71, 0xaa, 0xb6, 0x49, 0x6a, 0x71, 0xb4, 0xdb, 0xb5,
+ 0x6d, 0xd2, 0x54, 0x63, 0x49, 0x12, 0xd5, 0xaa, 0x6d, 0x73, 0xc9, 0x53, 0xc3, 0x24, 0x1d, 0x75,
+ 0xab, 0x41, 0x44, 0x0b, 0x4e, 0x0c, 0x97, 0xd6, 0xec, 0x58, 0x5a, 0xf5, 0x26, 0xb1, 0x1d, 0xb5,
+ 0x69, 0x7a, 0xd2, 0xc7, 0xb8, 0xb4, 0xae, 0x36, 0xdd, 0x79, 0x5d, 0x6d, 0x56, 0x4d, 0xa3, 0xa1,
+ 0xd7, 0x76, 0xf8, 0x7c, 0xd6, 0x3f, 0xef, 0x9b, 0xe3, 0x11, 0x50, 0xa0, 0x9f, 0xb6, 0xda, 0x37,
+ 0x0a, 0xa4, 0x69, 0x3a, 0xde, 0xe4, 0x7c, 0x70, 0x92, 0x9d, 0x67, 0x53, 0xb5, 0x6f, 0x31, 0x09,
+ 0xe9, 0xad, 0x11, 0x78, 0x78, 0x93, 0xe2, 0xf1, 0x02, 0x33, 0x50, 0x21, 0xb7, 0xdb, 0xc4, 0x76,
+ 0xb0, 0x02, 0xa3, 0x76, 0xcd, 0x30, 0x49, 0x66, 0xff, 0x3c, 0x5a, 0x48, 0x17, 0x9f, 0xce, 0x0f,
+ 0x89, 0xb4, 0x7c, 0x3f, 0x0d, 0xf9, 0x4d, 0x77, 0xf9, 0xe2, 0xc8, 0x47, 0x72, 0x4a, 0x61, 0xaa,
+ 0xf0, 0x11, 0x18, 0xbd, 0xdd, 0x26, 0xd6, 0x4e, 0x06, 0xcd, 0xa3, 0x85, 0x71, 0x3e, 0x45, 0x47,
+ 0xf0, 0x23, 0x30, 0x6e, 0xaa, 0x1a, 0xa9, 0xda, 0xfa, 0x1b, 0x24, 0x93, 0x9a, 0x47, 0x0b, 0xa3,
+ 0xca, 0x98, 0x3b, 0xb0, 0xa9, 0xbf, 0x41, 0xb0, 0x04, 0x40, 0x27, 0x1d, 0xe3, 0x16, 0x69, 0x65,
+ 0x46, 0xbc, 0xc5, 0x48, 0xa1, 0x6b, 0x2a, 0xee, 0x28, 0x3e, 0x02, 0x63, 0x86, 0x55, 0x27, 0x56,
+ 0x75, 0x6b, 0x27, 0x33, 0xea, 0x4a, 0x28, 0x07, 0xe8, 0xe7, 0xc5, 0x9d, 0xec, 0x77, 0x11, 0x8c,
+ 0x52, 0x63, 0xf0, 0x09, 0x98, 0xd4, 0x5b, 0xb5, 0x46, 0xbb, 0x4e, 0xaa, 0x86, 0xa5, 0x55, 0xf5,
+ 0xba, 0x9d, 0x49, 0xcd, 0x8f, 0x2c, 0x8c, 0x2b, 0x07, 0xf9, 0xf0, 0xba, 0xa5, 0xad, 0xd5, 0x6d,
+ 0x9c, 0x87, 0xc3, 0x9e, 0x9c, 0x69, 0x19, 0x37, 0x49, 0xcd, 0xa1, 0xb2, 0x23, 0x54, 0x76, 0x9a,
+ 0x4f, 0x6d, 0xb0, 0x19, 0x57, 0xfe, 0x02, 0x3c, 0xe2, 0xc9, 0x6b, 0x35, 0xb3, 0x6a, 0xb6, 0xb7,
+ 0x1a, 0x7a, 0xad, 0xea, 0x82, 0x64, 0x13, 0xc7, 0xce, 0x1c, 0x98, 0x47, 0x0b, 0x63, 0x4a, 0x86,
+ 0x8b, 0xac, 0xd4, 0xcc, 0x0d, 0x2a, 0xb0, 0xc4, 0xe7, 0xa5, 0xb7, 0x11, 0xcc, 0x04, 0x20, 0xb4,
+ 0x4d, 0xa3, 0x65, 0x13, 0x7c, 0x19, 0x0e, 0x58, 0xc4, 0x6e, 0x37, 0x1c, 0x3b, 0x83, 0xe6, 0x47,
+ 0x16, 0xd2, 0xc5, 0x33, 0x49, 0xce, 0xc1, 0x5d, 0xa8, 0x78, 0x0a, 0x5c, 0xe7, 0x5b, 0xe4, 0x75,
+ 0xa7, 0x1a, 0x84, 0x52, 0x39, 0xe8, 0x0e, 0x6f, 0x78, 0x48, 0x4a, 0xbf, 0x47, 0x30, 0xf7, 0x82,
+ 0x45, 0x54, 0x87, 0x94, 0x5b, 0x8e, 0xb5, 0xb3, 0x62, 0x19, 0x6d, 0xd3, 0x8b, 0x8a, 0x32, 0xec,
+ 0x37, 0x55, 0x8b, 0xb4, 0x1c, 0x7e, 0x84, 0xa7, 0x3f, 0x92, 0x53, 0xff, 0x93, 0x1f, 0xc7, 0x9f,
+ 0x16, 0x0d, 0x61, 0x16, 0xaa, 0xa6, 0x6e, 0xe7, 0x6b, 0x46, 0xb3, 0x20, 0x68, 0xe1, 0x8b, 0xf1,
+ 0x13, 0x70, 0x88, 0xb8, 0xa3, 0x55, 0xcd, 0x1d, 0xae, 0xea, 0xf5, 0xde, 0xa1, 0xa6, 0x94, 0x09,
+ 0xd2, 0x5d, 0xb0, 0x56, 0xc7, 0xab, 0x90, 0x16, 0x44, 0x69, 0x68, 0xa4, 0x8b, 0x8f, 0x0f, 0x45,
+ 0x41, 0xd8, 0x10, 0x7a, 0xba, 0xa4, 0xef, 0x23, 0x98, 0x7b, 0xc9, 0xac, 0xf7, 0xf5, 0xeb, 0xaa,
+ 0x7f, 0x17, 0x94, 0x68, 0x17, 0x66, 0xb6, 0xb0, 0x15, 0x3e, 0x0f, 0xe9, 0x36, 0xdd, 0x89, 0xa6,
+ 0x1a, 0x37, 0x3a, 0xeb, 0xa9, 0xf3, 0xb2, 0x31, 0xbf, 0xec, 0x66, 0xe3, 0x55, 0xd5, 0xbe, 0xa5,
+ 0x00, 0x13, 0x77, 0xff, 0x97, 0xbe, 0x8e, 0xe0, 0xe1, 0x15, 0xe2, 0x84, 0x8d, 0x94, 0x61, 0x5f,
+ 0x4b, 0x6d, 0x12, 0x3f, 0xf4, 0x10, 0x13, 0x7a, 0xba, 0x14, 0x3f, 0x0d, 0xe3, 0x16, 0x51, 0xeb,
+ 0x71, 0xcd, 0x1a, 0x73, 0x85, 0xa9, 0x51, 0x77, 0x60, 0x6e, 0x89, 0x34, 0x48, 0x3f, 0xec, 0x1e,
+ 0x80, 0x59, 0x47, 0x60, 0xf4, 0x86, 0x61, 0xd5, 0x58, 0xe6, 0x8f, 0xb1, 0xdc, 0x66, 0x23, 0xee,
+ 0xa9, 0xcd, 0x5e, 0xd1, 0x6d, 0x01, 0x0e, 0x3b, 0x22, 0x18, 0x21, 0x61, 0x30, 0xce, 0x87, 0x4a,
+ 0x0f, 0x33, 0x20, 0x51, 0xfd, 0x91, 0xee, 0x23, 0x98, 0x0b, 0xd9, 0xd9, 0xcd, 0xe2, 0x09, 0x21,
+ 0xba, 0xbc, 0x54, 0x8e, 0x1d, 0xc4, 0xe9, 0x5e, 0x64, 0xf5, 0xcd, 0xe2, 0x54, 0xbf, 0x2c, 0xfe,
+ 0x19, 0x02, 0x2c, 0x64, 0xf1, 0x03, 0xc6, 0xec, 0x18, 0x8c, 0x31, 0x8f, 0xfc, 0xa9, 0x7b, 0x80,
+ 0x0e, 0xae, 0xd5, 0xf1, 0x05, 0x18, 0xa5, 0xff, 0xf2, 0x18, 0x93, 0xa2, 0x5d, 0xe5, 0xb7, 0x01,
+ 0x5d, 0x25, 0xbd, 0x8b, 0x00, 0x0b, 0xa9, 0xea, 0x19, 0xdf, 0xd5, 0x8a, 0x76, 0xa3, 0x75, 0x6f,
+ 0x59, 0xa9, 0x00, 0x16, 0x12, 0xc0, 0xb3, 0xe8, 0x39, 0x5f, 0xec, 0x2f, 0x50, 0x30, 0x25, 0x98,
+ 0x8f, 0x02, 0x93, 0x85, 0xbd, 0xb4, 0x0e, 0x93, 0x5e, 0xa2, 0x3f, 0x18, 0x85, 0x36, 0xe0, 0x2b,
+ 0x86, 0x71, 0xab, 0x6d, 0xfa, 0x74, 0x3e, 0x01, 0x93, 0x0d, 0xbd, 0x75, 0x8b, 0xd4, 0xab, 0x5e,
+ 0xb7, 0xc6, 0xd4, 0xaf, 0x3e, 0xa4, 0x1c, 0x62, 0x13, 0x0a, 0x1f, 0xc7, 0xc7, 0x61, 0xc2, 0xbe,
+ 0xdd, 0xe8, 0xc9, 0x8d, 0x70, 0xb9, 0xb4, 0x7d, 0xbb, 0xe1, 0x09, 0x2d, 0x1e, 0x84, 0xb4, 0xa3,
+ 0x5a, 0x1a, 0x71, 0xaa, 0x74, 0xd3, 0x9f, 0x8e, 0xc1, 0x28, 0xdd, 0x0f, 0x5f, 0xf4, 0x19, 0x9f,
+ 0x4b, 0x5c, 0x06, 0x1e, 0x0f, 0x1b, 0x3a, 0x4e, 0x63, 0x3b, 0x68, 0xe6, 0x73, 0xb0, 0xcf, 0xd9,
+ 0x31, 0x59, 0xb6, 0x1e, 0x2a, 0x9e, 0x88, 0x8e, 0x83, 0xca, 0x8e, 0x49, 0x56, 0x1f, 0x52, 0xe8,
+ 0x2a, 0x7c, 0x06, 0x0e, 0xb7, 0x6d, 0x62, 0xd1, 0xbe, 0x4e, 0xbf, 0xa1, 0x93, 0x7a, 0x95, 0x2a,
+ 0x9b, 0xe2, 0xbe, 0x4e, 0xbb, 0x93, 0x9b, 0xde, 0x9c, 0xbb, 0x12, 0xab, 0x30, 0xad, 0xb7, 0x1c,
+ 0xa2, 0x59, 0xaa, 0x43, 0xea, 0x55, 0x7b, 0xc7, 0x76, 0x48, 0x33, 0x33, 0x4d, 0x37, 0x3f, 0x3d,
+ 0x74, 0xf3, 0xb5, 0xee, 0xaa, 0x4d, 0xba, 0xc8, 0x8d, 0xc7, 0x91, 0x55, 0xa4, 0x4c, 0xe9, 0x81,
+ 0x09, 0x7c, 0x0e, 0x66, 0x02, 0x46, 0xf1, 0x6d, 0x30, 0x35, 0x0b, 0x29, 0x87, 0x7d, 0x66, 0xf1,
+ 0x55, 0x9f, 0x83, 0xa9, 0x60, 0xaf, 0xcc, 0x1b, 0xb6, 0x93, 0x43, 0xed, 0x5a, 0xa9, 0xd9, 0xcb,
+ 0x6c, 0x8d, 0xab, 0x71, 0x35, 0xa5, 0x1c, 0xd2, 0x7c, 0x23, 0xf8, 0x55, 0x38, 0xbc, 0xa5, 0x6b,
+ 0xb4, 0x37, 0xab, 0xf6, 0xba, 0xe0, 0xcc, 0x04, 0xd5, 0x9d, 0x1f, 0xaa, 0x7b, 0x51, 0xd7, 0x5e,
+ 0x74, 0xd7, 0x55, 0xdc, 0x65, 0x5c, 0xfd, 0xb4, 0xa7, 0xac, 0x3b, 0x88, 0x6d, 0xc8, 0x76, 0x77,
+ 0xa0, 0x49, 0x69, 0x6f, 0xab, 0x56, 0xdd, 0xf5, 0xdb, 0xdd, 0x68, 0x92, 0x6e, 0x74, 0x2e, 0xd6,
+ 0x46, 0x4b, 0xaa, 0x43, 0x36, 0xd9, 0x62, 0xbe, 0xdd, 0x9c, 0xa7, 0x39, 0x30, 0x85, 0x1f, 0x83,
+ 0x89, 0xba, 0x6e, 0x9b, 0x0d, 0x75, 0x87, 0xc6, 0x2e, 0x6f, 0x80, 0xd2, 0x7c, 0xec, 0x9a, 0x1b,
+ 0x84, 0xf3, 0x90, 0xae, 0x13, 0xbb, 0x66, 0xe9, 0xa6, 0xfb, 0x5a, 0xca, 0xec, 0xe3, 0x12, 0xbd,
+ 0x21, 0x7c, 0x1e, 0xf6, 0xb3, 0xc7, 0x06, 0x6d, 0x34, 0xd3, 0xc5, 0xe3, 0xc3, 0x7b, 0x32, 0x2a,
+ 0xaa, 0xf0, 0x25, 0x58, 0x83, 0x0c, 0x0b, 0x62, 0x7e, 0xbe, 0xd5, 0xde, 0x6b, 0x80, 0xf6, 0x89,
+ 0xe9, 0x88, 0x88, 0x62, 0x07, 0x5f, 0xe9, 0x2e, 0x52, 0x66, 0x99, 0xba, 0xe0, 0x78, 0xe9, 0xf5,
+ 0x8f, 0xe5, 0x76, 0x74, 0xe1, 0xc0, 0x2f, 0xf2, 0x06, 0xd7, 0x2e, 0xdc, 0xe5, 0xff, 0xdd, 0x2b,
+ 0x34, 0x8c, 0x1a, 0x7b, 0x2a, 0x16, 0xee, 0x7a, 0xff, 0xde, 0x2b, 0x08, 0x97, 0x50, 0xe1, 0xae,
+ 0x70, 0x9d, 0xb1, 0x19, 0x9d, 0x78, 0xa3, 0xf7, 0x16, 0x27, 0x80, 0xf5, 0x42, 0x34, 0xad, 0x16,
+ 0xc7, 0x60, 0x3f, 0xf3, 0x74, 0x31, 0x0d, 0xe3, 0xee, 0x08, 0x3d, 0x60, 0xe9, 0x17, 0x29, 0x80,
+ 0x5e, 0x01, 0xc0, 0x58, 0x2c, 0x1d, 0xbc, 0x1c, 0x04, 0x0f, 0x2b, 0x15, 0x79, 0x58, 0x23, 0xe1,
+ 0xc3, 0xba, 0x09, 0x73, 0x2e, 0x06, 0x55, 0x0e, 0x82, 0x08, 0xf7, 0xbe, 0x5d, 0xc0, 0x4d, 0x13,
+ 0x58, 0x99, 0x71, 0xa5, 0x78, 0x9b, 0x2d, 0x40, 0xde, 0xfc, 0x58, 0xbe, 0x19, 0xb3, 0xe2, 0x61,
+ 0x79, 0xcf, 0xb8, 0x4b, 0x7f, 0x44, 0x90, 0x61, 0x57, 0x7c, 0x45, 0xd5, 0x2a, 0xa4, 0x69, 0x36,
+ 0x54, 0x87, 0x78, 0x45, 0x7f, 0x39, 0x70, 0xd1, 0xe7, 0xe9, 0x55, 0xb2, 0x80, 0x4f, 0x0c, 0x31,
+ 0x4f, 0x54, 0xe3, 0xdd, 0xf4, 0x27, 0x61, 0xd2, 0x51, 0xb5, 0xaa, 0xc3, 0xc7, 0x03, 0x17, 0xfe,
+ 0x41, 0xa7, 0xb7, 0x64, 0xad, 0x8e, 0x37, 0x60, 0x42, 0x14, 0xe6, 0x57, 0xec, 0xc2, 0x50, 0x84,
+ 0x85, 0x4d, 0x99, 0xce, 0xb4, 0xa0, 0x53, 0x7a, 0x05, 0x66, 0x56, 0x88, 0xd3, 0xc7, 0xbf, 0x45,
+ 0xdf, 0x5d, 0xc3, 0xbd, 0x83, 0xb8, 0xde, 0xb1, 0xeb, 0xf2, 0x7d, 0x04, 0x19, 0xd6, 0x66, 0xf4,
+ 0xd9, 0x20, 0xe8, 0x0b, 0xda, 0xab, 0x2f, 0x7b, 0xeb, 0x3f, 0x76, 0x20, 0xc3, 0xfa, 0x8f, 0x4f,
+ 0x06, 0x8b, 0x3e, 0x2d, 0x78, 0xca, 0x6b, 0xc1, 0xdf, 0x46, 0x30, 0xd5, 0x8d, 0x33, 0x6f, 0xcf,
+ 0x8b, 0x81, 0xf8, 0x3a, 0x41, 0x77, 0x9d, 0x87, 0x63, 0xc3, 0x77, 0xed, 0xc6, 0xd5, 0xd3, 0x30,
+ 0xe2, 0xa8, 0x1a, 0x07, 0x61, 0x3e, 0x0a, 0x55, 0x66, 0x8f, 0xbb, 0x42, 0xfa, 0x0a, 0x82, 0xa9,
+ 0xee, 0xa1, 0x79, 0xd6, 0x70, 0x6d, 0x28, 0xa9, 0xb6, 0xbd, 0x9d, 0xc9, 0x35, 0x98, 0xea, 0x9e,
+ 0x89, 0x67, 0x49, 0xc9, 0x77, 0x16, 0x1c, 0x15, 0x1c, 0x85, 0x0a, 0x8b, 0xc7, 0x2f, 0xa4, 0xe0,
+ 0x68, 0x28, 0xa1, 0xe9, 0xd6, 0x11, 0x59, 0x0d, 0x49, 0xb3, 0xfa, 0x29, 0x98, 0xf1, 0x65, 0x35,
+ 0xe3, 0x85, 0xf4, 0x3a, 0xab, 0xb1, 0x0c, 0x1f, 0xec, 0x04, 0x8c, 0x58, 0xab, 0xe3, 0x57, 0x01,
+ 0x87, 0xd7, 0xd1, 0x82, 0x10, 0x55, 0x48, 0x83, 0x1e, 0xb1, 0x3d, 0xa6, 0x82, 0x7b, 0x48, 0xef,
+ 0xa4, 0xe0, 0x68, 0x28, 0x27, 0x7d, 0x18, 0xac, 0xf8, 0x10, 0x7e, 0x92, 0x22, 0x70, 0x1a, 0x4e,
+ 0xc6, 0x43, 0x80, 0x69, 0x62, 0x21, 0xdf, 0xdf, 0x99, 0xd4, 0x83, 0x73, 0x06, 0x5f, 0xf2, 0x47,
+ 0xd7, 0x48, 0x54, 0x74, 0xb1, 0x57, 0xa5, 0x18, 0x62, 0x3f, 0x44, 0x70, 0x54, 0x21, 0xae, 0xb9,
+ 0x9f, 0x38, 0x1c, 0x17, 0xe0, 0x48, 0x8b, 0xdc, 0xa9, 0x46, 0xc6, 0xc5, 0x4c, 0x8b, 0xdc, 0xa9,
+ 0x84, 0x42, 0x43, 0xfa, 0x22, 0x82, 0xa3, 0xa1, 0x0a, 0xf5, 0xc9, 0x58, 0x3a, 0xa4, 0x56, 0xdd,
+ 0x47, 0x30, 0xe9, 0x3e, 0xc3, 0x2b, 0xaa, 0x66, 0x47, 0x94, 0x2a, 0x1c, 0xb7, 0x54, 0x0d, 0xe5,
+ 0x26, 0x8f, 0x86, 0xb9, 0x01, 0x91, 0x16, 0x30, 0x61, 0xaa, 0x67, 0x0e, 0xa7, 0x03, 0xce, 0xc1,
+ 0x3e, 0x47, 0xd5, 0x3c, 0x1a, 0x20, 0xb2, 0x5a, 0x29, 0x54, 0x3a, 0xf6, 0xc3, 0xff, 0x37, 0x08,
+ 0xb0, 0x47, 0x44, 0xe8, 0xe4, 0x41, 0x93, 0x25, 0x7b, 0xc0, 0xc2, 0x4f, 0x3e, 0xed, 0x4b, 0x40,
+ 0x3e, 0xdd, 0x85, 0xc3, 0x3e, 0x8f, 0x38, 0x8e, 0xcf, 0xc1, 0x01, 0xde, 0x7a, 0x72, 0x28, 0x63,
+ 0x10, 0x02, 0x8a, 0xb7, 0x24, 0x2e, 0x9e, 0xb9, 0x57, 0x60, 0xbc, 0xfb, 0x84, 0xc4, 0x59, 0x98,
+ 0x2d, 0x5f, 0xab, 0x28, 0x2f, 0x57, 0x2b, 0x2f, 0x6f, 0x94, 0xab, 0x2f, 0x5d, 0xdb, 0xdc, 0x28,
+ 0xbf, 0xb0, 0xb6, 0xbc, 0x56, 0x5e, 0x9a, 0x7a, 0x08, 0x8f, 0xc3, 0x68, 0x45, 0x5e, 0xbc, 0x52,
+ 0x9e, 0x4a, 0xb9, 0xff, 0x5e, 0x5d, 0x5f, 0x2a, 0x5f, 0x99, 0x1a, 0xc5, 0x93, 0x90, 0x5e, 0x92,
+ 0x2b, 0x72, 0x75, 0xb3, 0xa2, 0x94, 0xe5, 0xab, 0x53, 0x23, 0x38, 0x0d, 0x07, 0x96, 0xd7, 0xae,
+ 0x94, 0x37, 0xcb, 0x95, 0xa9, 0x7d, 0xc5, 0x77, 0x0b, 0x90, 0x5e, 0xea, 0xf5, 0x92, 0xf8, 0x7b,
+ 0x08, 0x0e, 0xfa, 0x48, 0x5c, 0x7c, 0x36, 0x31, 0xf1, 0x9e, 0x2d, 0x26, 0xe2, 0x88, 0x29, 0x96,
+ 0xd2, 0xc9, 0x8e, 0x9c, 0xa6, 0x24, 0xfd, 0x29, 0xfa, 0x6e, 0x7a, 0xeb, 0x77, 0x7f, 0xf9, 0x46,
+ 0x6a, 0x4e, 0xc2, 0xf4, 0x6b, 0x1b, 0x26, 0x5a, 0x62, 0x5f, 0x9b, 0x94, 0x50, 0x0e, 0xff, 0xa1,
+ 0xdb, 0x10, 0x08, 0x0d, 0xed, 0xf0, 0xb7, 0xda, 0x00, 0x42, 0x39, 0x1b, 0x97, 0x04, 0x93, 0xb6,
+ 0x3b, 0xf2, 0x63, 0x2c, 0x06, 0x4f, 0xf9, 0xa9, 0x63, 0xf1, 0x23, 0x35, 0xfb, 0xa2, 0x54, 0x70,
+ 0xcd, 0xbe, 0xcb, 0xa4, 0x2f, 0x74, 0xfb, 0xec, 0x9c, 0xd0, 0x5f, 0xe7, 0x7c, 0x7d, 0x75, 0x49,
+ 0x24, 0x7f, 0xf1, 0x07, 0x08, 0x0e, 0xfa, 0xf8, 0xd7, 0x88, 0x33, 0xe8, 0xc7, 0xd5, 0xc6, 0xf7,
+ 0x6b, 0xbd, 0x23, 0xd3, 0xa2, 0xd6, 0x91, 0x0f, 0xb9, 0x7f, 0x4e, 0x75, 0x33, 0x84, 0xfa, 0x72,
+ 0x16, 0x33, 0x5f, 0xdc, 0xa9, 0x01, 0x9e, 0xf8, 0x1e, 0x08, 0xb9, 0x7b, 0xf8, 0x6f, 0xdd, 0xfe,
+ 0x28, 0xf6, 0xe1, 0x0c, 0x60, 0xc5, 0xe3, 0x3b, 0xf1, 0x7a, 0x47, 0x16, 0x21, 0xec, 0xc8, 0x73,
+ 0xc2, 0xa7, 0x53, 0xc2, 0x15, 0x48, 0x9d, 0xba, 0x5c, 0x3c, 0x4f, 0x9d, 0x12, 0x64, 0xf2, 0xf1,
+ 0x1d, 0xf4, 0x1f, 0xd6, 0x7b, 0xc8, 0xeb, 0xc1, 0x62, 0x7b, 0x3b, 0x80, 0xc7, 0xce, 0xce, 0x86,
+ 0x6a, 0x51, 0xb9, 0x69, 0x3a, 0x3b, 0xd2, 0x45, 0x7e, 0x42, 0xec, 0x40, 0x72, 0x89, 0x0f, 0xe4,
+ 0xe7, 0xfc, 0x4a, 0x12, 0x98, 0x61, 0xfc, 0xe4, 0x50, 0x0b, 0xfb, 0xf3, 0xdd, 0xd9, 0x73, 0xc9,
+ 0x16, 0xf1, 0xcc, 0xbe, 0xd4, 0x91, 0x79, 0xf1, 0xf6, 0x45, 0x54, 0xfc, 0xec, 0xc0, 0xbf, 0x44,
+ 0x90, 0x16, 0xf2, 0x17, 0x17, 0xe2, 0x66, 0xba, 0x67, 0x78, 0x8c, 0xba, 0x2c, 0xbd, 0xda, 0x91,
+ 0x67, 0x7c, 0xf9, 0xed, 0x65, 0x36, 0xb5, 0x7a, 0x51, 0x7a, 0x36, 0xda, 0xea, 0x00, 0xf0, 0x1e,
+ 0x2f, 0x51, 0xe2, 0xf4, 0xef, 0xaf, 0x11, 0xa4, 0x85, 0x48, 0x8f, 0x70, 0x23, 0x4c, 0x3f, 0xc7,
+ 0x72, 0xe3, 0x66, 0x47, 0x66, 0xdb, 0x75, 0xe4, 0x69, 0xfa, 0x37, 0x14, 0xfd, 0xab, 0xc5, 0xe7,
+ 0x7b, 0xd1, 0x1f, 0x3f, 0xee, 0xbb, 0x2c, 0x4b, 0xee, 0x9e, 0xe7, 0xd0, 0x7b, 0x08, 0xd2, 0x42,
+ 0x30, 0x47, 0x38, 0x14, 0x66, 0xaf, 0x07, 0x46, 0xfc, 0xaa, 0x18, 0xf1, 0xe7, 0x73, 0xcf, 0x26,
+ 0x8b, 0x78, 0xc1, 0x52, 0xfc, 0x03, 0x04, 0x63, 0x5e, 0x7d, 0xc4, 0xa7, 0x62, 0x95, 0xd1, 0x24,
+ 0x68, 0xfb, 0x0d, 0xc5, 0x7b, 0x30, 0xf4, 0xf3, 0x90, 0x16, 0x98, 0xf3, 0x08, 0x28, 0xc3, 0x1c,
+ 0x7b, 0x2c, 0x6b, 0xb3, 0xd4, 0xcc, 0x87, 0x31, 0xbd, 0x55, 0xbd, 0xe0, 0x6c, 0x50, 0x5d, 0xee,
+ 0xa5, 0x93, 0x16, 0x7a, 0x9c, 0x28, 0x03, 0x42, 0xfd, 0x5d, 0xf6, 0x4c, 0xfc, 0x05, 0xbc, 0x30,
+ 0x5c, 0xf6, 0x17, 0x06, 0x0f, 0xbe, 0xdd, 0xa4, 0x18, 0xfe, 0x13, 0x82, 0xe9, 0xd0, 0xcb, 0x15,
+ 0x7f, 0x26, 0x46, 0xa1, 0x08, 0xd3, 0x19, 0xd9, 0xd8, 0x1c, 0x8b, 0xd4, 0xe8, 0xc8, 0xc7, 0x79,
+ 0xd1, 0x08, 0x90, 0x54, 0xbe, 0xcf, 0xd4, 0xbf, 0x4b, 0xd2, 0x99, 0x38, 0x85, 0x4f, 0x78, 0xc3,
+ 0xd9, 0x25, 0x1f, 0x03, 0x84, 0x7f, 0x8c, 0xe0, 0x90, 0x9f, 0x8c, 0xc2, 0xc5, 0xa8, 0x90, 0xde,
+ 0x93, 0x7b, 0xcf, 0x8b, 0xe1, 0x5d, 0xc4, 0x67, 0x22, 0xc3, 0x5b, 0x34, 0xde, 0x8d, 0xea, 0x7f,
+ 0x22, 0x98, 0x0e, 0x3d, 0xa6, 0x23, 0x8e, 0x65, 0x10, 0x21, 0x96, 0xc0, 0xee, 0x7b, 0x1d, 0xd9,
+ 0x87, 0x5c, 0x47, 0xce, 0x88, 0x1f, 0x43, 0x25, 0xf1, 0x6a, 0xf1, 0x02, 0x75, 0x4d, 0x14, 0xca,
+ 0x27, 0xf0, 0x33, 0x70, 0x4e, 0xef, 0x23, 0x98, 0x0e, 0xbd, 0x44, 0x23, 0xbc, 0x1e, 0xc4, 0xad,
+ 0x0d, 0xac, 0x91, 0xe5, 0x8e, 0x0c, 0xb4, 0x61, 0xa3, 0xef, 0x4e, 0x76, 0x42, 0xb9, 0xe4, 0x27,
+ 0x74, 0x3f, 0x05, 0xb3, 0xfd, 0x29, 0x1f, 0x5c, 0x4a, 0x96, 0x3d, 0xe2, 0x53, 0x3b, 0x9b, 0x8c,
+ 0xbe, 0x90, 0xbe, 0x8c, 0x3a, 0x72, 0xa1, 0x5f, 0x22, 0x79, 0xef, 0xff, 0x3e, 0xa3, 0xd4, 0xe5,
+ 0xf5, 0x58, 0xf7, 0x72, 0xc0, 0x69, 0xf6, 0x2b, 0x24, 0xbb, 0xd4, 0x87, 0x7d, 0xc1, 0xdf, 0x49,
+ 0xc1, 0x6c, 0x7f, 0xfa, 0x27, 0x02, 0x8f, 0xa1, 0x9c, 0x51, 0x52, 0x3c, 0xbe, 0x85, 0x3a, 0xf2,
+ 0x1c, 0x3d, 0xdd, 0xb0, 0x89, 0x1d, 0xf9, 0xf8, 0x80, 0x99, 0x50, 0x5c, 0xaf, 0x17, 0x9f, 0x4d,
+ 0x18, 0x10, 0x1c, 0x1a, 0x37, 0xa6, 0xfb, 0xa1, 0xf3, 0x0f, 0x04, 0xb3, 0xfd, 0xd9, 0xa0, 0x08,
+ 0x74, 0x86, 0x52, 0x48, 0x49, 0xd1, 0x69, 0x74, 0xe4, 0x63, 0x14, 0x82, 0x81, 0x74, 0x11, 0xf5,
+ 0xbe, 0x2c, 0x5d, 0xda, 0xbd, 0xf7, 0x16, 0x35, 0xd8, 0x7d, 0x6c, 0x7e, 0x80, 0x60, 0xb6, 0x3f,
+ 0xaf, 0x14, 0xe1, 0xf3, 0x50, 0x32, 0x6a, 0x60, 0x5e, 0x5f, 0x0b, 0xe7, 0x75, 0x9c, 0x0e, 0x68,
+ 0x90, 0x23, 0xf8, 0xbf, 0x08, 0xc6, 0xbb, 0xb9, 0x8a, 0x4f, 0xc7, 0xcb, 0x69, 0xcf, 0xc8, 0x48,
+ 0x6e, 0x48, 0xfa, 0x36, 0xea, 0xc8, 0xd0, 0xcb, 0x5c, 0x6a, 0xef, 0x97, 0x10, 0x47, 0x3e, 0xc1,
+ 0x55, 0x2e, 0xf4, 0x42, 0xf4, 0x77, 0x8c, 0xa5, 0x11, 0x47, 0xd5, 0xae, 0x5f, 0x90, 0x9e, 0x4a,
+ 0xde, 0x13, 0x74, 0x97, 0xe3, 0x77, 0x52, 0x30, 0xde, 0xcd, 0xcb, 0x08, 0xdf, 0x83, 0x94, 0x7e,
+ 0x0c, 0xdf, 0x7f, 0x84, 0x3a, 0xb2, 0xbb, 0x4f, 0x47, 0x9e, 0x74, 0x54, 0x2d, 0x94, 0x7d, 0x5f,
+ 0x43, 0xc5, 0x25, 0xef, 0x5a, 0xd9, 0x4d, 0x9f, 0x4d, 0x1d, 0x71, 0x63, 0x91, 0x42, 0x21, 0x17,
+ 0x4b, 0xbb, 0x50, 0x26, 0xaa, 0xc0, 0x1f, 0x22, 0x18, 0xef, 0x06, 0x65, 0x04, 0x1c, 0xc1, 0xef,
+ 0x15, 0x06, 0xc6, 0xeb, 0x57, 0x91, 0xd8, 0x24, 0xbc, 0x99, 0xbb, 0xb4, 0xdb, 0x1e, 0xd8, 0xb3,
+ 0xf5, 0xfa, 0x33, 0xb9, 0xa7, 0x12, 0xea, 0xe0, 0x2b, 0xf1, 0xbf, 0x10, 0x8c, 0x79, 0x6c, 0x67,
+ 0x44, 0xb7, 0x1f, 0xe0, 0x68, 0x23, 0x4a, 0x50, 0x90, 0x42, 0x95, 0xde, 0x46, 0xfe, 0xe6, 0xf5,
+ 0x4d, 0xbc, 0xe7, 0x88, 0xbf, 0xfe, 0x0c, 0xde, 0x65, 0xb0, 0xe3, 0x8f, 0x10, 0x4c, 0x6c, 0x12,
+ 0x67, 0x4d, 0x6d, 0x6e, 0xd0, 0x9f, 0xe6, 0xe2, 0xee, 0x6b, 0x40, 0x57, 0x9b, 0x8c, 0x73, 0xeb,
+ 0x4d, 0x7a, 0x1e, 0xcf, 0x04, 0x64, 0xd8, 0xac, 0xf4, 0x4d, 0x44, 0x1d, 0xba, 0x8f, 0x24, 0x99,
+ 0x5a, 0xe3, 0xfd, 0x12, 0x26, 0x6e, 0x2b, 0x64, 0x0b, 0x5b, 0x95, 0x50, 0xee, 0xba, 0x57, 0x85,
+ 0xa3, 0xf4, 0x04, 0x48, 0x96, 0x80, 0x1a, 0xfc, 0x93, 0x14, 0x4c, 0xac, 0x0c, 0x73, 0x71, 0x25,
+ 0xbe, 0x8b, 0x7f, 0x65, 0x2e, 0x7e, 0xb8, 0x5b, 0x17, 0xb5, 0x07, 0xe3, 0x62, 0x50, 0xcd, 0xba,
+ 0x74, 0x39, 0xb9, 0x1a, 0xf1, 0x59, 0x1e, 0x50, 0x88, 0xff, 0x9c, 0x02, 0x5c, 0x21, 0x36, 0x1d,
+ 0x24, 0x56, 0x53, 0xb7, 0x6d, 0x57, 0x03, 0x5e, 0x08, 0xa0, 0x12, 0x16, 0xf1, 0xf0, 0x7b, 0x22,
+ 0x86, 0x24, 0x4f, 0x88, 0x7f, 0x33, 0x4c, 0xff, 0x8e, 0xa4, 0x95, 0x5d, 0x61, 0xea, 0x84, 0x54,
+ 0xbb, 0x90, 0x7c, 0x56, 0x5a, 0xde, 0x0d, 0xb2, 0xfd, 0x95, 0xbd, 0x24, 0x6d, 0xec, 0x0d, 0xdf,
+ 0xbe, 0x6a, 0xb3, 0xd7, 0x7e, 0x25, 0x67, 0x07, 0x7f, 0x87, 0xf1, 0x5b, 0x39, 0xbf, 0xed, 0x38,
+ 0xa6, 0x5d, 0x2a, 0x14, 0xee, 0xdc, 0xb9, 0x13, 0xfc, 0x82, 0x43, 0x6d, 0x3b, 0xdb, 0xec, 0x37,
+ 0xfa, 0xa7, 0x5d, 0x28, 0x6e, 0x18, 0x56, 0x73, 0xb1, 0x05, 0x8f, 0xd6, 0x8c, 0xe6, 0xb0, 0x72,
+ 0xb4, 0x81, 0xae, 0x2f, 0xf3, 0x69, 0xcd, 0x68, 0xa8, 0x2d, 0x2d, 0x6f, 0x58, 0x5a, 0x41, 0x23,
+ 0x2d, 0x5a, 0x9a, 0x0b, 0xbd, 0x3d, 0xfa, 0xfe, 0xfc, 0xff, 0xbc, 0xf0, 0xf1, 0x3f, 0x08, 0x6d,
+ 0xed, 0xa7, 0xab, 0x9e, 0xfc, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x40, 0xcf, 0x85, 0x12, 0xfa,
+ 0x31, 0x00, 0x00,
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// DataCatalogClient is the client API for DataCatalog service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type DataCatalogClient interface {
+ // Searches Data Catalog for multiple resources like entries, tags that
+ // match a query.
+ //
+ // This is a custom method
+ // (https://cloud.google.com/apis/design/custom_methods) and does not return
+ // the complete resource, only the resource identifier and high level
+ // fields. Clients can subsequentally call `Get` methods.
+ //
+ // Note that Data Catalog search queries do not guarantee full recall. Query
+ // results that match your query may not be returned, even in subsequent
+ // result pages. Also note that results returned (and not returned) can vary
+ // across repeated search queries.
+ //
+ // See [Data Catalog Search
+ // Syntax](/data-catalog/docs/how-to/search-reference) for more information.
+ SearchCatalog(ctx context.Context, in *SearchCatalogRequest, opts ...grpc.CallOption) (*SearchCatalogResponse, error)
+ // Creates an EntryGroup.
+ //
+ // An entry group contains logically related entries together with Cloud
+ // Identity and Access Management policies that specify the users who can
+ // create, edit, and view entries within the entry group.
+ //
+ // Data Catalog automatically creates an entry group for BigQuery entries
+ // ("@bigquery") and Pub/Sub topics ("@pubsub"). Users create their own entry
+ // group to contain Cloud Storage fileset entries or custom type entries,
+ // and the IAM policies associated with those entries. Entry groups, like
+ // entries, can be searched.
+ //
+ // A maximum of 10,000 entry groups may be created per organization across all
+ // locations.
+ //
+ // Users should enable the Data Catalog API in the project identified by
+ // the `parent` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ CreateEntryGroup(ctx context.Context, in *CreateEntryGroupRequest, opts ...grpc.CallOption) (*EntryGroup, error)
+ // Gets an EntryGroup.
+ GetEntryGroup(ctx context.Context, in *GetEntryGroupRequest, opts ...grpc.CallOption) (*EntryGroup, error)
+ // Updates an EntryGroup. The user should enable the Data Catalog API in the
+ // project identified by the `entry_group.name` parameter (see [Data Catalog
+ // Resource Project] (/data-catalog/docs/concepts/resource-project) for more
+ // information).
+ UpdateEntryGroup(ctx context.Context, in *UpdateEntryGroupRequest, opts ...grpc.CallOption) (*EntryGroup, error)
+ // Deletes an EntryGroup. Only entry groups that do not contain entries can be
+ // deleted. Users should enable the Data Catalog API in the project
+ // identified by the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ DeleteEntryGroup(ctx context.Context, in *DeleteEntryGroupRequest, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Lists entry groups.
+ ListEntryGroups(ctx context.Context, in *ListEntryGroupsRequest, opts ...grpc.CallOption) (*ListEntryGroupsResponse, error)
+ // Creates an entry. Only entries of 'FILESET' type or user-specified type can
+ // be created.
+ //
+ // Users should enable the Data Catalog API in the project identified by
+ // the `parent` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ //
+ // A maximum of 100,000 entries may be created per entry group.
+ CreateEntry(ctx context.Context, in *CreateEntryRequest, opts ...grpc.CallOption) (*Entry, error)
+ // Updates an existing entry.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `entry.name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ UpdateEntry(ctx context.Context, in *UpdateEntryRequest, opts ...grpc.CallOption) (*Entry, error)
+ // Deletes an existing entry. Only entries created through
+ // [CreateEntry][google.cloud.datacatalog.v1.DataCatalog.CreateEntry]
+ // method can be deleted.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ DeleteEntry(ctx context.Context, in *DeleteEntryRequest, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Gets an entry.
+ GetEntry(ctx context.Context, in *GetEntryRequest, opts ...grpc.CallOption) (*Entry, error)
+ // Get an entry by target resource name. This method allows clients to use
+ // the resource name from the source Google Cloud Platform service to get the
+ // Data Catalog Entry.
+ LookupEntry(ctx context.Context, in *LookupEntryRequest, opts ...grpc.CallOption) (*Entry, error)
+ // Lists entries.
+ ListEntries(ctx context.Context, in *ListEntriesRequest, opts ...grpc.CallOption) (*ListEntriesResponse, error)
+ // Creates a tag template. The user should enable the Data Catalog API in
+ // the project identified by the `parent` parameter (see [Data Catalog
+ // Resource Project](/data-catalog/docs/concepts/resource-project) for more
+ // information).
+ CreateTagTemplate(ctx context.Context, in *CreateTagTemplateRequest, opts ...grpc.CallOption) (*TagTemplate, error)
+ // Gets a tag template.
+ GetTagTemplate(ctx context.Context, in *GetTagTemplateRequest, opts ...grpc.CallOption) (*TagTemplate, error)
+ // Updates a tag template. This method cannot be used to update the fields of
+ // a template. The tag template fields are represented as separate resources
+ // and should be updated using their own create/update/delete methods.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `tag_template.name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ UpdateTagTemplate(ctx context.Context, in *UpdateTagTemplateRequest, opts ...grpc.CallOption) (*TagTemplate, error)
+ // Deletes a tag template and all tags using the template.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ DeleteTagTemplate(ctx context.Context, in *DeleteTagTemplateRequest, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Creates a field in a tag template. The user should enable the Data Catalog
+ // API in the project identified by the `parent` parameter (see
+ // [Data Catalog Resource
+ // Project](/data-catalog/docs/concepts/resource-project) for more
+ // information).
+ CreateTagTemplateField(ctx context.Context, in *CreateTagTemplateFieldRequest, opts ...grpc.CallOption) (*TagTemplateField, error)
+ // Updates a field in a tag template. This method cannot be used to update the
+ // field type. Users should enable the Data Catalog API in the project
+ // identified by the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ UpdateTagTemplateField(ctx context.Context, in *UpdateTagTemplateFieldRequest, opts ...grpc.CallOption) (*TagTemplateField, error)
+ // Renames a field in a tag template. The user should enable the Data Catalog
+ // API in the project identified by the `name` parameter (see [Data Catalog
+ // Resource Project](/data-catalog/docs/concepts/resource-project) for more
+ // information).
+ RenameTagTemplateField(ctx context.Context, in *RenameTagTemplateFieldRequest, opts ...grpc.CallOption) (*TagTemplateField, error)
+ // Deletes a field in a tag template and all uses of that field.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ DeleteTagTemplateField(ctx context.Context, in *DeleteTagTemplateFieldRequest, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Creates a tag on an [Entry][google.cloud.datacatalog.v1.Entry].
+ // Note: The project identified by the `parent` parameter for the
+ // [tag](/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries.tags/create#path-parameters)
+ // and the
+ // [tag
+ // template](/data-catalog/docs/reference/rest/v1/projects.locations.tagTemplates/create#path-parameters)
+ // used to create the tag must be from the same organization.
+ CreateTag(ctx context.Context, in *CreateTagRequest, opts ...grpc.CallOption) (*Tag, error)
+ // Updates an existing tag.
+ UpdateTag(ctx context.Context, in *UpdateTagRequest, opts ...grpc.CallOption) (*Tag, error)
+ // Deletes a tag.
+ DeleteTag(ctx context.Context, in *DeleteTagRequest, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Lists the tags on an [Entry][google.cloud.datacatalog.v1.Entry].
+ ListTags(ctx context.Context, in *ListTagsRequest, opts ...grpc.CallOption) (*ListTagsResponse, error)
+ // Sets the access control policy for a resource. Replaces any existing
+ // policy.
+ // Supported resources are:
+ // - Tag templates.
+ // - Entries.
+ // - Entry groups.
+ // Note, this method cannot be used to manage policies for BigQuery, Cloud
+ // Pub/Sub and any external Google Cloud Platform resources synced to Cloud
+ // Data Catalog.
+ //
+ // Callers must have following Google IAM permission
+ // - `datacatalog.tagTemplates.setIamPolicy` to set policies on tag
+ // templates.
+ // - `datacatalog.entries.setIamPolicy` to set policies on entries.
+ // - `datacatalog.entryGroups.setIamPolicy` to set policies on entry groups.
+ SetIamPolicy(ctx context.Context, in *v1.SetIamPolicyRequest, opts ...grpc.CallOption) (*v1.Policy, error)
+ // Gets the access control policy for a resource. A `NOT_FOUND` error
+ // is returned if the resource does not exist. An empty policy is returned
+ // if the resource exists but does not have a policy set on it.
+ //
+ // Supported resources are:
+ // - Tag templates.
+ // - Entries.
+ // - Entry groups.
+ // Note, this method cannot be used to manage policies for BigQuery, Cloud
+ // Pub/Sub and any external Google Cloud Platform resources synced to Cloud
+ // Data Catalog.
+ //
+ // Callers must have following Google IAM permission
+ // - `datacatalog.tagTemplates.getIamPolicy` to get policies on tag
+ // templates.
+ // - `datacatalog.entries.getIamPolicy` to get policies on entries.
+ // - `datacatalog.entryGroups.getIamPolicy` to get policies on entry groups.
+ GetIamPolicy(ctx context.Context, in *v1.GetIamPolicyRequest, opts ...grpc.CallOption) (*v1.Policy, error)
+ // Returns the caller's permissions on a resource.
+ // If the resource does not exist, an empty set of permissions is returned
+ // (We don't return a `NOT_FOUND` error).
+ //
+ // Supported resources are:
+ // - Tag templates.
+ // - Entries.
+ // - Entry groups.
+ // Note, this method cannot be used to manage policies for BigQuery, Cloud
+ // Pub/Sub and any external Google Cloud Platform resources synced to Cloud
+ // Data Catalog.
+ //
+ // A caller is not required to have Google IAM permission to make this
+ // request.
+ TestIamPermissions(ctx context.Context, in *v1.TestIamPermissionsRequest, opts ...grpc.CallOption) (*v1.TestIamPermissionsResponse, error)
+}
+
+type dataCatalogClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewDataCatalogClient(cc grpc.ClientConnInterface) DataCatalogClient {
+ return &dataCatalogClient{cc}
+}
+
+func (c *dataCatalogClient) SearchCatalog(ctx context.Context, in *SearchCatalogRequest, opts ...grpc.CallOption) (*SearchCatalogResponse, error) {
+ out := new(SearchCatalogResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/SearchCatalog", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) CreateEntryGroup(ctx context.Context, in *CreateEntryGroupRequest, opts ...grpc.CallOption) (*EntryGroup, error) {
+ out := new(EntryGroup)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/CreateEntryGroup", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) GetEntryGroup(ctx context.Context, in *GetEntryGroupRequest, opts ...grpc.CallOption) (*EntryGroup, error) {
+ out := new(EntryGroup)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/GetEntryGroup", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) UpdateEntryGroup(ctx context.Context, in *UpdateEntryGroupRequest, opts ...grpc.CallOption) (*EntryGroup, error) {
+ out := new(EntryGroup)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/UpdateEntryGroup", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) DeleteEntryGroup(ctx context.Context, in *DeleteEntryGroupRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/DeleteEntryGroup", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) ListEntryGroups(ctx context.Context, in *ListEntryGroupsRequest, opts ...grpc.CallOption) (*ListEntryGroupsResponse, error) {
+ out := new(ListEntryGroupsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/ListEntryGroups", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) CreateEntry(ctx context.Context, in *CreateEntryRequest, opts ...grpc.CallOption) (*Entry, error) {
+ out := new(Entry)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/CreateEntry", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) UpdateEntry(ctx context.Context, in *UpdateEntryRequest, opts ...grpc.CallOption) (*Entry, error) {
+ out := new(Entry)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/UpdateEntry", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) DeleteEntry(ctx context.Context, in *DeleteEntryRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/DeleteEntry", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) GetEntry(ctx context.Context, in *GetEntryRequest, opts ...grpc.CallOption) (*Entry, error) {
+ out := new(Entry)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/GetEntry", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) LookupEntry(ctx context.Context, in *LookupEntryRequest, opts ...grpc.CallOption) (*Entry, error) {
+ out := new(Entry)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/LookupEntry", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) ListEntries(ctx context.Context, in *ListEntriesRequest, opts ...grpc.CallOption) (*ListEntriesResponse, error) {
+ out := new(ListEntriesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/ListEntries", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) CreateTagTemplate(ctx context.Context, in *CreateTagTemplateRequest, opts ...grpc.CallOption) (*TagTemplate, error) {
+ out := new(TagTemplate)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/CreateTagTemplate", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) GetTagTemplate(ctx context.Context, in *GetTagTemplateRequest, opts ...grpc.CallOption) (*TagTemplate, error) {
+ out := new(TagTemplate)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/GetTagTemplate", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) UpdateTagTemplate(ctx context.Context, in *UpdateTagTemplateRequest, opts ...grpc.CallOption) (*TagTemplate, error) {
+ out := new(TagTemplate)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/UpdateTagTemplate", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) DeleteTagTemplate(ctx context.Context, in *DeleteTagTemplateRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/DeleteTagTemplate", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) CreateTagTemplateField(ctx context.Context, in *CreateTagTemplateFieldRequest, opts ...grpc.CallOption) (*TagTemplateField, error) {
+ out := new(TagTemplateField)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/CreateTagTemplateField", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) UpdateTagTemplateField(ctx context.Context, in *UpdateTagTemplateFieldRequest, opts ...grpc.CallOption) (*TagTemplateField, error) {
+ out := new(TagTemplateField)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/UpdateTagTemplateField", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) RenameTagTemplateField(ctx context.Context, in *RenameTagTemplateFieldRequest, opts ...grpc.CallOption) (*TagTemplateField, error) {
+ out := new(TagTemplateField)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/RenameTagTemplateField", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) DeleteTagTemplateField(ctx context.Context, in *DeleteTagTemplateFieldRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/DeleteTagTemplateField", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) CreateTag(ctx context.Context, in *CreateTagRequest, opts ...grpc.CallOption) (*Tag, error) {
+ out := new(Tag)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/CreateTag", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) UpdateTag(ctx context.Context, in *UpdateTagRequest, opts ...grpc.CallOption) (*Tag, error) {
+ out := new(Tag)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/UpdateTag", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) DeleteTag(ctx context.Context, in *DeleteTagRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/DeleteTag", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) ListTags(ctx context.Context, in *ListTagsRequest, opts ...grpc.CallOption) (*ListTagsResponse, error) {
+ out := new(ListTagsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/ListTags", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) SetIamPolicy(ctx context.Context, in *v1.SetIamPolicyRequest, opts ...grpc.CallOption) (*v1.Policy, error) {
+ out := new(v1.Policy)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/SetIamPolicy", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) GetIamPolicy(ctx context.Context, in *v1.GetIamPolicyRequest, opts ...grpc.CallOption) (*v1.Policy, error) {
+ out := new(v1.Policy)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/GetIamPolicy", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dataCatalogClient) TestIamPermissions(ctx context.Context, in *v1.TestIamPermissionsRequest, opts ...grpc.CallOption) (*v1.TestIamPermissionsResponse, error) {
+ out := new(v1.TestIamPermissionsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.datacatalog.v1.DataCatalog/TestIamPermissions", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// DataCatalogServer is the server API for DataCatalog service.
+type DataCatalogServer interface {
+ // Searches Data Catalog for multiple resources like entries, tags that
+ // match a query.
+ //
+ // This is a custom method
+ // (https://cloud.google.com/apis/design/custom_methods) and does not return
+ // the complete resource, only the resource identifier and high level
+ // fields. Clients can subsequentally call `Get` methods.
+ //
+ // Note that Data Catalog search queries do not guarantee full recall. Query
+ // results that match your query may not be returned, even in subsequent
+ // result pages. Also note that results returned (and not returned) can vary
+ // across repeated search queries.
+ //
+ // See [Data Catalog Search
+ // Syntax](/data-catalog/docs/how-to/search-reference) for more information.
+ SearchCatalog(context.Context, *SearchCatalogRequest) (*SearchCatalogResponse, error)
+ // Creates an EntryGroup.
+ //
+ // An entry group contains logically related entries together with Cloud
+ // Identity and Access Management policies that specify the users who can
+ // create, edit, and view entries within the entry group.
+ //
+ // Data Catalog automatically creates an entry group for BigQuery entries
+ // ("@bigquery") and Pub/Sub topics ("@pubsub"). Users create their own entry
+ // group to contain Cloud Storage fileset entries or custom type entries,
+ // and the IAM policies associated with those entries. Entry groups, like
+ // entries, can be searched.
+ //
+ // A maximum of 10,000 entry groups may be created per organization across all
+ // locations.
+ //
+ // Users should enable the Data Catalog API in the project identified by
+ // the `parent` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ CreateEntryGroup(context.Context, *CreateEntryGroupRequest) (*EntryGroup, error)
+ // Gets an EntryGroup.
+ GetEntryGroup(context.Context, *GetEntryGroupRequest) (*EntryGroup, error)
+ // Updates an EntryGroup. The user should enable the Data Catalog API in the
+ // project identified by the `entry_group.name` parameter (see [Data Catalog
+ // Resource Project] (/data-catalog/docs/concepts/resource-project) for more
+ // information).
+ UpdateEntryGroup(context.Context, *UpdateEntryGroupRequest) (*EntryGroup, error)
+ // Deletes an EntryGroup. Only entry groups that do not contain entries can be
+ // deleted. Users should enable the Data Catalog API in the project
+ // identified by the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ DeleteEntryGroup(context.Context, *DeleteEntryGroupRequest) (*empty.Empty, error)
+ // Lists entry groups.
+ ListEntryGroups(context.Context, *ListEntryGroupsRequest) (*ListEntryGroupsResponse, error)
+ // Creates an entry. Only entries of 'FILESET' type or user-specified type can
+ // be created.
+ //
+ // Users should enable the Data Catalog API in the project identified by
+ // the `parent` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ //
+ // A maximum of 100,000 entries may be created per entry group.
+ CreateEntry(context.Context, *CreateEntryRequest) (*Entry, error)
+ // Updates an existing entry.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `entry.name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ UpdateEntry(context.Context, *UpdateEntryRequest) (*Entry, error)
+ // Deletes an existing entry. Only entries created through
+ // [CreateEntry][google.cloud.datacatalog.v1.DataCatalog.CreateEntry]
+ // method can be deleted.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ DeleteEntry(context.Context, *DeleteEntryRequest) (*empty.Empty, error)
+ // Gets an entry.
+ GetEntry(context.Context, *GetEntryRequest) (*Entry, error)
+ // Get an entry by target resource name. This method allows clients to use
+ // the resource name from the source Google Cloud Platform service to get the
+ // Data Catalog Entry.
+ LookupEntry(context.Context, *LookupEntryRequest) (*Entry, error)
+ // Lists entries.
+ ListEntries(context.Context, *ListEntriesRequest) (*ListEntriesResponse, error)
+ // Creates a tag template. The user should enable the Data Catalog API in
+ // the project identified by the `parent` parameter (see [Data Catalog
+ // Resource Project](/data-catalog/docs/concepts/resource-project) for more
+ // information).
+ CreateTagTemplate(context.Context, *CreateTagTemplateRequest) (*TagTemplate, error)
+ // Gets a tag template.
+ GetTagTemplate(context.Context, *GetTagTemplateRequest) (*TagTemplate, error)
+ // Updates a tag template. This method cannot be used to update the fields of
+ // a template. The tag template fields are represented as separate resources
+ // and should be updated using their own create/update/delete methods.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `tag_template.name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ UpdateTagTemplate(context.Context, *UpdateTagTemplateRequest) (*TagTemplate, error)
+ // Deletes a tag template and all tags using the template.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ DeleteTagTemplate(context.Context, *DeleteTagTemplateRequest) (*empty.Empty, error)
+ // Creates a field in a tag template. The user should enable the Data Catalog
+ // API in the project identified by the `parent` parameter (see
+ // [Data Catalog Resource
+ // Project](/data-catalog/docs/concepts/resource-project) for more
+ // information).
+ CreateTagTemplateField(context.Context, *CreateTagTemplateFieldRequest) (*TagTemplateField, error)
+ // Updates a field in a tag template. This method cannot be used to update the
+ // field type. Users should enable the Data Catalog API in the project
+ // identified by the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ UpdateTagTemplateField(context.Context, *UpdateTagTemplateFieldRequest) (*TagTemplateField, error)
+ // Renames a field in a tag template. The user should enable the Data Catalog
+ // API in the project identified by the `name` parameter (see [Data Catalog
+ // Resource Project](/data-catalog/docs/concepts/resource-project) for more
+ // information).
+ RenameTagTemplateField(context.Context, *RenameTagTemplateFieldRequest) (*TagTemplateField, error)
+ // Deletes a field in a tag template and all uses of that field.
+ // Users should enable the Data Catalog API in the project identified by
+ // the `name` parameter (see [Data Catalog Resource Project]
+ // (/data-catalog/docs/concepts/resource-project) for more information).
+ DeleteTagTemplateField(context.Context, *DeleteTagTemplateFieldRequest) (*empty.Empty, error)
+ // Creates a tag on an [Entry][google.cloud.datacatalog.v1.Entry].
+ // Note: The project identified by the `parent` parameter for the
+ // [tag](/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries.tags/create#path-parameters)
+ // and the
+ // [tag
+ // template](/data-catalog/docs/reference/rest/v1/projects.locations.tagTemplates/create#path-parameters)
+ // used to create the tag must be from the same organization.
+ CreateTag(context.Context, *CreateTagRequest) (*Tag, error)
+ // Updates an existing tag.
+ UpdateTag(context.Context, *UpdateTagRequest) (*Tag, error)
+ // Deletes a tag.
+ DeleteTag(context.Context, *DeleteTagRequest) (*empty.Empty, error)
+ // Lists the tags on an [Entry][google.cloud.datacatalog.v1.Entry].
+ ListTags(context.Context, *ListTagsRequest) (*ListTagsResponse, error)
+ // Sets the access control policy for a resource. Replaces any existing
+ // policy.
+ // Supported resources are:
+ // - Tag templates.
+ // - Entries.
+ // - Entry groups.
+ // Note, this method cannot be used to manage policies for BigQuery, Cloud
+ // Pub/Sub and any external Google Cloud Platform resources synced to Cloud
+ // Data Catalog.
+ //
+ // Callers must have following Google IAM permission
+ // - `datacatalog.tagTemplates.setIamPolicy` to set policies on tag
+ // templates.
+ // - `datacatalog.entries.setIamPolicy` to set policies on entries.
+ // - `datacatalog.entryGroups.setIamPolicy` to set policies on entry groups.
+ SetIamPolicy(context.Context, *v1.SetIamPolicyRequest) (*v1.Policy, error)
+ // Gets the access control policy for a resource. A `NOT_FOUND` error
+ // is returned if the resource does not exist. An empty policy is returned
+ // if the resource exists but does not have a policy set on it.
+ //
+ // Supported resources are:
+ // - Tag templates.
+ // - Entries.
+ // - Entry groups.
+ // Note, this method cannot be used to manage policies for BigQuery, Cloud
+ // Pub/Sub and any external Google Cloud Platform resources synced to Cloud
+ // Data Catalog.
+ //
+ // Callers must have following Google IAM permission
+ // - `datacatalog.tagTemplates.getIamPolicy` to get policies on tag
+ // templates.
+ // - `datacatalog.entries.getIamPolicy` to get policies on entries.
+ // - `datacatalog.entryGroups.getIamPolicy` to get policies on entry groups.
+ GetIamPolicy(context.Context, *v1.GetIamPolicyRequest) (*v1.Policy, error)
+ // Returns the caller's permissions on a resource.
+ // If the resource does not exist, an empty set of permissions is returned
+ // (We don't return a `NOT_FOUND` error).
+ //
+ // Supported resources are:
+ // - Tag templates.
+ // - Entries.
+ // - Entry groups.
+ // Note, this method cannot be used to manage policies for BigQuery, Cloud
+ // Pub/Sub and any external Google Cloud Platform resources synced to Cloud
+ // Data Catalog.
+ //
+ // A caller is not required to have Google IAM permission to make this
+ // request.
+ TestIamPermissions(context.Context, *v1.TestIamPermissionsRequest) (*v1.TestIamPermissionsResponse, error)
+}
+
+// UnimplementedDataCatalogServer can be embedded to have forward compatible implementations.
+type UnimplementedDataCatalogServer struct {
+}
+
+func (*UnimplementedDataCatalogServer) SearchCatalog(ctx context.Context, req *SearchCatalogRequest) (*SearchCatalogResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SearchCatalog not implemented")
+}
+func (*UnimplementedDataCatalogServer) CreateEntryGroup(ctx context.Context, req *CreateEntryGroupRequest) (*EntryGroup, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateEntryGroup not implemented")
+}
+func (*UnimplementedDataCatalogServer) GetEntryGroup(ctx context.Context, req *GetEntryGroupRequest) (*EntryGroup, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetEntryGroup not implemented")
+}
+func (*UnimplementedDataCatalogServer) UpdateEntryGroup(ctx context.Context, req *UpdateEntryGroupRequest) (*EntryGroup, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateEntryGroup not implemented")
+}
+func (*UnimplementedDataCatalogServer) DeleteEntryGroup(ctx context.Context, req *DeleteEntryGroupRequest) (*empty.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteEntryGroup not implemented")
+}
+func (*UnimplementedDataCatalogServer) ListEntryGroups(ctx context.Context, req *ListEntryGroupsRequest) (*ListEntryGroupsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListEntryGroups not implemented")
+}
+func (*UnimplementedDataCatalogServer) CreateEntry(ctx context.Context, req *CreateEntryRequest) (*Entry, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateEntry not implemented")
+}
+func (*UnimplementedDataCatalogServer) UpdateEntry(ctx context.Context, req *UpdateEntryRequest) (*Entry, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateEntry not implemented")
+}
+func (*UnimplementedDataCatalogServer) DeleteEntry(ctx context.Context, req *DeleteEntryRequest) (*empty.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteEntry not implemented")
+}
+func (*UnimplementedDataCatalogServer) GetEntry(ctx context.Context, req *GetEntryRequest) (*Entry, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetEntry not implemented")
+}
+func (*UnimplementedDataCatalogServer) LookupEntry(ctx context.Context, req *LookupEntryRequest) (*Entry, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method LookupEntry not implemented")
+}
+func (*UnimplementedDataCatalogServer) ListEntries(ctx context.Context, req *ListEntriesRequest) (*ListEntriesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListEntries not implemented")
+}
+func (*UnimplementedDataCatalogServer) CreateTagTemplate(ctx context.Context, req *CreateTagTemplateRequest) (*TagTemplate, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateTagTemplate not implemented")
+}
+func (*UnimplementedDataCatalogServer) GetTagTemplate(ctx context.Context, req *GetTagTemplateRequest) (*TagTemplate, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetTagTemplate not implemented")
+}
+func (*UnimplementedDataCatalogServer) UpdateTagTemplate(ctx context.Context, req *UpdateTagTemplateRequest) (*TagTemplate, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateTagTemplate not implemented")
+}
+func (*UnimplementedDataCatalogServer) DeleteTagTemplate(ctx context.Context, req *DeleteTagTemplateRequest) (*empty.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteTagTemplate not implemented")
+}
+func (*UnimplementedDataCatalogServer) CreateTagTemplateField(ctx context.Context, req *CreateTagTemplateFieldRequest) (*TagTemplateField, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateTagTemplateField not implemented")
+}
+func (*UnimplementedDataCatalogServer) UpdateTagTemplateField(ctx context.Context, req *UpdateTagTemplateFieldRequest) (*TagTemplateField, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateTagTemplateField not implemented")
+}
+func (*UnimplementedDataCatalogServer) RenameTagTemplateField(ctx context.Context, req *RenameTagTemplateFieldRequest) (*TagTemplateField, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method RenameTagTemplateField not implemented")
+}
+func (*UnimplementedDataCatalogServer) DeleteTagTemplateField(ctx context.Context, req *DeleteTagTemplateFieldRequest) (*empty.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteTagTemplateField not implemented")
+}
+func (*UnimplementedDataCatalogServer) CreateTag(ctx context.Context, req *CreateTagRequest) (*Tag, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateTag not implemented")
+}
+func (*UnimplementedDataCatalogServer) UpdateTag(ctx context.Context, req *UpdateTagRequest) (*Tag, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateTag not implemented")
+}
+func (*UnimplementedDataCatalogServer) DeleteTag(ctx context.Context, req *DeleteTagRequest) (*empty.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteTag not implemented")
+}
+func (*UnimplementedDataCatalogServer) ListTags(ctx context.Context, req *ListTagsRequest) (*ListTagsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListTags not implemented")
+}
+func (*UnimplementedDataCatalogServer) SetIamPolicy(ctx context.Context, req *v1.SetIamPolicyRequest) (*v1.Policy, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SetIamPolicy not implemented")
+}
+func (*UnimplementedDataCatalogServer) GetIamPolicy(ctx context.Context, req *v1.GetIamPolicyRequest) (*v1.Policy, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetIamPolicy not implemented")
+}
+func (*UnimplementedDataCatalogServer) TestIamPermissions(ctx context.Context, req *v1.TestIamPermissionsRequest) (*v1.TestIamPermissionsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestIamPermissions not implemented")
+}
+
+func RegisterDataCatalogServer(s *grpc.Server, srv DataCatalogServer) {
+ s.RegisterService(&_DataCatalog_serviceDesc, srv)
+}
+
+func _DataCatalog_SearchCatalog_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SearchCatalogRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).SearchCatalog(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/SearchCatalog",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).SearchCatalog(ctx, req.(*SearchCatalogRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_CreateEntryGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateEntryGroupRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).CreateEntryGroup(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/CreateEntryGroup",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).CreateEntryGroup(ctx, req.(*CreateEntryGroupRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_GetEntryGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetEntryGroupRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).GetEntryGroup(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/GetEntryGroup",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).GetEntryGroup(ctx, req.(*GetEntryGroupRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_UpdateEntryGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateEntryGroupRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).UpdateEntryGroup(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/UpdateEntryGroup",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).UpdateEntryGroup(ctx, req.(*UpdateEntryGroupRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_DeleteEntryGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteEntryGroupRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).DeleteEntryGroup(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/DeleteEntryGroup",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).DeleteEntryGroup(ctx, req.(*DeleteEntryGroupRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_ListEntryGroups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListEntryGroupsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).ListEntryGroups(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/ListEntryGroups",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).ListEntryGroups(ctx, req.(*ListEntryGroupsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_CreateEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateEntryRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).CreateEntry(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/CreateEntry",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).CreateEntry(ctx, req.(*CreateEntryRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_UpdateEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateEntryRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).UpdateEntry(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/UpdateEntry",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).UpdateEntry(ctx, req.(*UpdateEntryRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_DeleteEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteEntryRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).DeleteEntry(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/DeleteEntry",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).DeleteEntry(ctx, req.(*DeleteEntryRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_GetEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetEntryRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).GetEntry(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/GetEntry",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).GetEntry(ctx, req.(*GetEntryRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_LookupEntry_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(LookupEntryRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).LookupEntry(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/LookupEntry",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).LookupEntry(ctx, req.(*LookupEntryRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_ListEntries_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListEntriesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).ListEntries(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/ListEntries",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).ListEntries(ctx, req.(*ListEntriesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_CreateTagTemplate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateTagTemplateRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).CreateTagTemplate(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/CreateTagTemplate",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).CreateTagTemplate(ctx, req.(*CreateTagTemplateRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_GetTagTemplate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetTagTemplateRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).GetTagTemplate(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/GetTagTemplate",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).GetTagTemplate(ctx, req.(*GetTagTemplateRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_UpdateTagTemplate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateTagTemplateRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).UpdateTagTemplate(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/UpdateTagTemplate",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).UpdateTagTemplate(ctx, req.(*UpdateTagTemplateRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_DeleteTagTemplate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteTagTemplateRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).DeleteTagTemplate(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/DeleteTagTemplate",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).DeleteTagTemplate(ctx, req.(*DeleteTagTemplateRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_CreateTagTemplateField_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateTagTemplateFieldRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).CreateTagTemplateField(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/CreateTagTemplateField",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).CreateTagTemplateField(ctx, req.(*CreateTagTemplateFieldRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_UpdateTagTemplateField_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateTagTemplateFieldRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).UpdateTagTemplateField(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/UpdateTagTemplateField",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).UpdateTagTemplateField(ctx, req.(*UpdateTagTemplateFieldRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_RenameTagTemplateField_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RenameTagTemplateFieldRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).RenameTagTemplateField(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/RenameTagTemplateField",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).RenameTagTemplateField(ctx, req.(*RenameTagTemplateFieldRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_DeleteTagTemplateField_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteTagTemplateFieldRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).DeleteTagTemplateField(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/DeleteTagTemplateField",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).DeleteTagTemplateField(ctx, req.(*DeleteTagTemplateFieldRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_CreateTag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateTagRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).CreateTag(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/CreateTag",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).CreateTag(ctx, req.(*CreateTagRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_UpdateTag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateTagRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).UpdateTag(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/UpdateTag",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).UpdateTag(ctx, req.(*UpdateTagRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_DeleteTag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteTagRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).DeleteTag(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/DeleteTag",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).DeleteTag(ctx, req.(*DeleteTagRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_ListTags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListTagsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).ListTags(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/ListTags",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).ListTags(ctx, req.(*ListTagsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_SetIamPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(v1.SetIamPolicyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).SetIamPolicy(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/SetIamPolicy",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).SetIamPolicy(ctx, req.(*v1.SetIamPolicyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_GetIamPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(v1.GetIamPolicyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).GetIamPolicy(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/GetIamPolicy",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).GetIamPolicy(ctx, req.(*v1.GetIamPolicyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DataCatalog_TestIamPermissions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(v1.TestIamPermissionsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DataCatalogServer).TestIamPermissions(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.datacatalog.v1.DataCatalog/TestIamPermissions",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DataCatalogServer).TestIamPermissions(ctx, req.(*v1.TestIamPermissionsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _DataCatalog_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.datacatalog.v1.DataCatalog",
+ HandlerType: (*DataCatalogServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "SearchCatalog",
+ Handler: _DataCatalog_SearchCatalog_Handler,
+ },
+ {
+ MethodName: "CreateEntryGroup",
+ Handler: _DataCatalog_CreateEntryGroup_Handler,
+ },
+ {
+ MethodName: "GetEntryGroup",
+ Handler: _DataCatalog_GetEntryGroup_Handler,
+ },
+ {
+ MethodName: "UpdateEntryGroup",
+ Handler: _DataCatalog_UpdateEntryGroup_Handler,
+ },
+ {
+ MethodName: "DeleteEntryGroup",
+ Handler: _DataCatalog_DeleteEntryGroup_Handler,
+ },
+ {
+ MethodName: "ListEntryGroups",
+ Handler: _DataCatalog_ListEntryGroups_Handler,
+ },
+ {
+ MethodName: "CreateEntry",
+ Handler: _DataCatalog_CreateEntry_Handler,
+ },
+ {
+ MethodName: "UpdateEntry",
+ Handler: _DataCatalog_UpdateEntry_Handler,
+ },
+ {
+ MethodName: "DeleteEntry",
+ Handler: _DataCatalog_DeleteEntry_Handler,
+ },
+ {
+ MethodName: "GetEntry",
+ Handler: _DataCatalog_GetEntry_Handler,
+ },
+ {
+ MethodName: "LookupEntry",
+ Handler: _DataCatalog_LookupEntry_Handler,
+ },
+ {
+ MethodName: "ListEntries",
+ Handler: _DataCatalog_ListEntries_Handler,
+ },
+ {
+ MethodName: "CreateTagTemplate",
+ Handler: _DataCatalog_CreateTagTemplate_Handler,
+ },
+ {
+ MethodName: "GetTagTemplate",
+ Handler: _DataCatalog_GetTagTemplate_Handler,
+ },
+ {
+ MethodName: "UpdateTagTemplate",
+ Handler: _DataCatalog_UpdateTagTemplate_Handler,
+ },
+ {
+ MethodName: "DeleteTagTemplate",
+ Handler: _DataCatalog_DeleteTagTemplate_Handler,
+ },
+ {
+ MethodName: "CreateTagTemplateField",
+ Handler: _DataCatalog_CreateTagTemplateField_Handler,
+ },
+ {
+ MethodName: "UpdateTagTemplateField",
+ Handler: _DataCatalog_UpdateTagTemplateField_Handler,
+ },
+ {
+ MethodName: "RenameTagTemplateField",
+ Handler: _DataCatalog_RenameTagTemplateField_Handler,
+ },
+ {
+ MethodName: "DeleteTagTemplateField",
+ Handler: _DataCatalog_DeleteTagTemplateField_Handler,
+ },
+ {
+ MethodName: "CreateTag",
+ Handler: _DataCatalog_CreateTag_Handler,
+ },
+ {
+ MethodName: "UpdateTag",
+ Handler: _DataCatalog_UpdateTag_Handler,
+ },
+ {
+ MethodName: "DeleteTag",
+ Handler: _DataCatalog_DeleteTag_Handler,
+ },
+ {
+ MethodName: "ListTags",
+ Handler: _DataCatalog_ListTags_Handler,
+ },
+ {
+ MethodName: "SetIamPolicy",
+ Handler: _DataCatalog_SetIamPolicy_Handler,
+ },
+ {
+ MethodName: "GetIamPolicy",
+ Handler: _DataCatalog_GetIamPolicy_Handler,
+ },
+ {
+ MethodName: "TestIamPermissions",
+ Handler: _DataCatalog_TestIamPermissions_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/datacatalog/v1/datacatalog.proto",
+}
diff --git a/googleapis/cloud/datacatalog/v1/gcs_fileset_spec.pb.go b/googleapis/cloud/datacatalog/v1/gcs_fileset_spec.pb.go
new file mode 100644
index 0000000000..684e1cbba2
--- /dev/null
+++ b/googleapis/cloud/datacatalog/v1/gcs_fileset_spec.pb.go
@@ -0,0 +1,193 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/datacatalog/v1/gcs_fileset_spec.proto
+
+package datacatalog
+
+import (
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// Describes a Cloud Storage fileset entry.
+type GcsFilesetSpec struct {
+ // Required. Patterns to identify a set of files in Google Cloud Storage. See [Cloud
+ // Storage documentation](/storage/docs/gsutil/addlhelp/WildcardNames) for
+ // more information. Note that bucket wildcards are currently not supported.
+ //
+ // Examples of valid file_patterns:
+ //
+ // * `gs://bucket_name/dir/*`: matches all files within `bucket_name/dir`
+ // directory.
+ // * `gs://bucket_name/dir/**`: matches all files in `bucket_name/dir`
+ // spanning all subdirectories.
+ // * `gs://bucket_name/file*`: matches files prefixed by `file` in
+ // `bucket_name`
+ // * `gs://bucket_name/??.txt`: matches files with two characters followed by
+ // `.txt` in `bucket_name`
+ // * `gs://bucket_name/[aeiou].txt`: matches files that contain a single
+ // vowel character followed by `.txt` in
+ // `bucket_name`
+ // * `gs://bucket_name/[a-m].txt`: matches files that contain `a`, `b`, ...
+ // or `m` followed by `.txt` in `bucket_name`
+ // * `gs://bucket_name/a/*/b`: matches all files in `bucket_name` that match
+ // `a/*/b` pattern, such as `a/c/b`, `a/d/b`
+ // * `gs://another_bucket/a.txt`: matches `gs://another_bucket/a.txt`
+ //
+ // You can combine wildcards to provide more powerful matches, for example:
+ //
+ // * `gs://bucket_name/[a-m]??.j*g`
+ FilePatterns []string `protobuf:"bytes,1,rep,name=file_patterns,json=filePatterns,proto3" json:"file_patterns,omitempty"`
+ // Output only. Sample files contained in this fileset, not all files
+ // contained in this fileset are represented here.
+ SampleGcsFileSpecs []*GcsFileSpec `protobuf:"bytes,2,rep,name=sample_gcs_file_specs,json=sampleGcsFileSpecs,proto3" json:"sample_gcs_file_specs,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *GcsFilesetSpec) Reset() { *m = GcsFilesetSpec{} }
+func (m *GcsFilesetSpec) String() string { return proto.CompactTextString(m) }
+func (*GcsFilesetSpec) ProtoMessage() {}
+func (*GcsFilesetSpec) Descriptor() ([]byte, []int) {
+ return fileDescriptor_5ef0234cfb0655d3, []int{0}
+}
+
+func (m *GcsFilesetSpec) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_GcsFilesetSpec.Unmarshal(m, b)
+}
+func (m *GcsFilesetSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_GcsFilesetSpec.Marshal(b, m, deterministic)
+}
+func (m *GcsFilesetSpec) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_GcsFilesetSpec.Merge(m, src)
+}
+func (m *GcsFilesetSpec) XXX_Size() int {
+ return xxx_messageInfo_GcsFilesetSpec.Size(m)
+}
+func (m *GcsFilesetSpec) XXX_DiscardUnknown() {
+ xxx_messageInfo_GcsFilesetSpec.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GcsFilesetSpec proto.InternalMessageInfo
+
+func (m *GcsFilesetSpec) GetFilePatterns() []string {
+ if m != nil {
+ return m.FilePatterns
+ }
+ return nil
+}
+
+func (m *GcsFilesetSpec) GetSampleGcsFileSpecs() []*GcsFileSpec {
+ if m != nil {
+ return m.SampleGcsFileSpecs
+ }
+ return nil
+}
+
+// Specifications of a single file in Cloud Storage.
+type GcsFileSpec struct {
+ // Required. The full file path. Example: `gs://bucket_name/a/b.txt`.
+ FilePath string `protobuf:"bytes,1,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
+ // Output only. Timestamps about the Cloud Storage file.
+ GcsTimestamps *SystemTimestamps `protobuf:"bytes,2,opt,name=gcs_timestamps,json=gcsTimestamps,proto3" json:"gcs_timestamps,omitempty"`
+ // Output only. The size of the file, in bytes.
+ SizeBytes int64 `protobuf:"varint,4,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *GcsFileSpec) Reset() { *m = GcsFileSpec{} }
+func (m *GcsFileSpec) String() string { return proto.CompactTextString(m) }
+func (*GcsFileSpec) ProtoMessage() {}
+func (*GcsFileSpec) Descriptor() ([]byte, []int) {
+ return fileDescriptor_5ef0234cfb0655d3, []int{1}
+}
+
+func (m *GcsFileSpec) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_GcsFileSpec.Unmarshal(m, b)
+}
+func (m *GcsFileSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_GcsFileSpec.Marshal(b, m, deterministic)
+}
+func (m *GcsFileSpec) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_GcsFileSpec.Merge(m, src)
+}
+func (m *GcsFileSpec) XXX_Size() int {
+ return xxx_messageInfo_GcsFileSpec.Size(m)
+}
+func (m *GcsFileSpec) XXX_DiscardUnknown() {
+ xxx_messageInfo_GcsFileSpec.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GcsFileSpec proto.InternalMessageInfo
+
+func (m *GcsFileSpec) GetFilePath() string {
+ if m != nil {
+ return m.FilePath
+ }
+ return ""
+}
+
+func (m *GcsFileSpec) GetGcsTimestamps() *SystemTimestamps {
+ if m != nil {
+ return m.GcsTimestamps
+ }
+ return nil
+}
+
+func (m *GcsFileSpec) GetSizeBytes() int64 {
+ if m != nil {
+ return m.SizeBytes
+ }
+ return 0
+}
+
+func init() {
+ proto.RegisterType((*GcsFilesetSpec)(nil), "google.cloud.datacatalog.v1.GcsFilesetSpec")
+ proto.RegisterType((*GcsFileSpec)(nil), "google.cloud.datacatalog.v1.GcsFileSpec")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/datacatalog/v1/gcs_fileset_spec.proto", fileDescriptor_5ef0234cfb0655d3)
+}
+
+var fileDescriptor_5ef0234cfb0655d3 = []byte{
+ // 343 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x91, 0xb1, 0x6e, 0xea, 0x30,
+ 0x14, 0x86, 0x65, 0x72, 0x75, 0x75, 0x31, 0x17, 0x86, 0x48, 0x57, 0x8a, 0xb8, 0x03, 0x11, 0x53,
+ 0x86, 0x36, 0x11, 0x74, 0xec, 0x54, 0x06, 0xba, 0x22, 0xe8, 0xd2, 0x2e, 0xa9, 0x31, 0x07, 0x63,
+ 0xc9, 0x89, 0xad, 0x1c, 0x17, 0x89, 0x3e, 0x4b, 0x9f, 0xa1, 0xcf, 0xd4, 0xc7, 0xe8, 0x58, 0x39,
+ 0x0e, 0x25, 0x43, 0x95, 0xd1, 0xff, 0xf1, 0x7f, 0xfe, 0xef, 0xd7, 0xa1, 0x73, 0xa1, 0xb5, 0x50,
+ 0x90, 0x71, 0xa5, 0x5f, 0x76, 0xd9, 0x8e, 0x59, 0xc6, 0x99, 0x65, 0x4a, 0x8b, 0xec, 0x38, 0xcb,
+ 0x04, 0xc7, 0x7c, 0x2f, 0x15, 0x20, 0xd8, 0x1c, 0x0d, 0xf0, 0xd4, 0x54, 0xda, 0xea, 0xf0, 0xbf,
+ 0xf7, 0xa4, 0xb5, 0x27, 0x6d, 0x79, 0xd2, 0xe3, 0x6c, 0x3c, 0x69, 0x16, 0x32, 0x23, 0xb3, 0xbd,
+ 0x04, 0xb5, 0xcb, 0xb7, 0x70, 0x60, 0x47, 0xa9, 0x2b, 0xef, 0x1e, 0x5f, 0x75, 0x25, 0x5a, 0x59,
+ 0x00, 0x5a, 0x56, 0x18, 0xf4, 0xbf, 0xa7, 0x6f, 0x84, 0x8e, 0xee, 0x39, 0x2e, 0x3d, 0xc5, 0xc6,
+ 0x00, 0x0f, 0x13, 0x3a, 0x74, 0x50, 0xb9, 0x61, 0xd6, 0x42, 0x55, 0x62, 0x44, 0xe2, 0x20, 0xe9,
+ 0x2f, 0x82, 0x8f, 0xbb, 0xde, 0xfa, 0xaf, 0x9b, 0xac, 0x9a, 0x41, 0xf8, 0x4c, 0xff, 0x21, 0x2b,
+ 0x8c, 0x82, 0xfc, 0xdc, 0xa4, 0xae, 0x81, 0x51, 0x2f, 0x0e, 0x92, 0xc1, 0x3c, 0x49, 0x3b, 0x8a,
+ 0xa4, 0x4d, 0xaa, 0x8b, 0x74, 0xbb, 0x83, 0x75, 0xe8, 0x77, 0xb5, 0x74, 0x9c, 0xbe, 0x13, 0x3a,
+ 0x68, 0x09, 0x61, 0x4c, 0xfb, 0x67, 0xb6, 0x43, 0x44, 0x62, 0x72, 0xe6, 0xfa, 0xd3, 0x70, 0x1d,
+ 0xc2, 0x47, 0x3a, 0x72, 0x30, 0x97, 0xa2, 0x51, 0x2f, 0x26, 0xc9, 0x60, 0x7e, 0xdd, 0x09, 0xb3,
+ 0x39, 0xa1, 0x85, 0xe2, 0xe1, 0xdb, 0xe4, 0x89, 0x86, 0x82, 0xe3, 0x45, 0x0b, 0xa7, 0x94, 0xa2,
+ 0x7c, 0x85, 0x7c, 0x7b, 0xb2, 0x80, 0xd1, 0xaf, 0x98, 0x24, 0x81, 0xff, 0xd7, 0x77, 0xf2, 0xc2,
+ 0xa9, 0x8b, 0x92, 0x4e, 0xb8, 0x2e, 0xba, 0xb2, 0x56, 0xe4, 0x69, 0xd9, 0x8c, 0x85, 0x56, 0xac,
+ 0x14, 0xa9, 0xae, 0x44, 0x26, 0xa0, 0xac, 0x0f, 0x92, 0xf9, 0x11, 0x33, 0x12, 0x7f, 0xbc, 0xe0,
+ 0x6d, 0xeb, 0xf9, 0x49, 0xc8, 0xf6, 0x77, 0xed, 0xba, 0xf9, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x15,
+ 0xfe, 0xbb, 0x50, 0x68, 0x02, 0x00, 0x00,
+}
diff --git a/googleapis/cloud/datacatalog/v1/schema.pb.go b/googleapis/cloud/datacatalog/v1/schema.pb.go
new file mode 100644
index 0000000000..dddc7bccb2
--- /dev/null
+++ b/googleapis/cloud/datacatalog/v1/schema.pb.go
@@ -0,0 +1,176 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/datacatalog/v1/schema.proto
+
+package datacatalog
+
+import (
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// Represents a schema (e.g. BigQuery, GoogleSQL, Avro schema).
+type Schema struct {
+ // Required. Schema of columns. A maximum of 10,000 columns and sub-columns can be
+ // specified.
+ Columns []*ColumnSchema `protobuf:"bytes,2,rep,name=columns,proto3" json:"columns,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Schema) Reset() { *m = Schema{} }
+func (m *Schema) String() string { return proto.CompactTextString(m) }
+func (*Schema) ProtoMessage() {}
+func (*Schema) Descriptor() ([]byte, []int) {
+ return fileDescriptor_c85321006f215ea0, []int{0}
+}
+
+func (m *Schema) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Schema.Unmarshal(m, b)
+}
+func (m *Schema) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Schema.Marshal(b, m, deterministic)
+}
+func (m *Schema) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Schema.Merge(m, src)
+}
+func (m *Schema) XXX_Size() int {
+ return xxx_messageInfo_Schema.Size(m)
+}
+func (m *Schema) XXX_DiscardUnknown() {
+ xxx_messageInfo_Schema.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Schema proto.InternalMessageInfo
+
+func (m *Schema) GetColumns() []*ColumnSchema {
+ if m != nil {
+ return m.Columns
+ }
+ return nil
+}
+
+// Representation of a column within a schema. Columns could be nested inside
+// other columns.
+type ColumnSchema struct {
+ // Required. Name of the column.
+ Column string `protobuf:"bytes,6,opt,name=column,proto3" json:"column,omitempty"`
+ // Required. Type of the column.
+ Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
+ // Optional. Description of the column. Default value is an empty string.
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ // Optional. A column's mode indicates whether the values in this column are required,
+ // nullable, etc. Only `NULLABLE`, `REQUIRED` and `REPEATED` are supported.
+ // Default mode is `NULLABLE`.
+ Mode string `protobuf:"bytes,3,opt,name=mode,proto3" json:"mode,omitempty"`
+ // Optional. Schema of sub-columns. A column can have zero or more sub-columns.
+ Subcolumns []*ColumnSchema `protobuf:"bytes,7,rep,name=subcolumns,proto3" json:"subcolumns,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ColumnSchema) Reset() { *m = ColumnSchema{} }
+func (m *ColumnSchema) String() string { return proto.CompactTextString(m) }
+func (*ColumnSchema) ProtoMessage() {}
+func (*ColumnSchema) Descriptor() ([]byte, []int) {
+ return fileDescriptor_c85321006f215ea0, []int{1}
+}
+
+func (m *ColumnSchema) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ColumnSchema.Unmarshal(m, b)
+}
+func (m *ColumnSchema) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ColumnSchema.Marshal(b, m, deterministic)
+}
+func (m *ColumnSchema) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ColumnSchema.Merge(m, src)
+}
+func (m *ColumnSchema) XXX_Size() int {
+ return xxx_messageInfo_ColumnSchema.Size(m)
+}
+func (m *ColumnSchema) XXX_DiscardUnknown() {
+ xxx_messageInfo_ColumnSchema.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ColumnSchema proto.InternalMessageInfo
+
+func (m *ColumnSchema) GetColumn() string {
+ if m != nil {
+ return m.Column
+ }
+ return ""
+}
+
+func (m *ColumnSchema) GetType() string {
+ if m != nil {
+ return m.Type
+ }
+ return ""
+}
+
+func (m *ColumnSchema) GetDescription() string {
+ if m != nil {
+ return m.Description
+ }
+ return ""
+}
+
+func (m *ColumnSchema) GetMode() string {
+ if m != nil {
+ return m.Mode
+ }
+ return ""
+}
+
+func (m *ColumnSchema) GetSubcolumns() []*ColumnSchema {
+ if m != nil {
+ return m.Subcolumns
+ }
+ return nil
+}
+
+func init() {
+ proto.RegisterType((*Schema)(nil), "google.cloud.datacatalog.v1.Schema")
+ proto.RegisterType((*ColumnSchema)(nil), "google.cloud.datacatalog.v1.ColumnSchema")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/datacatalog/v1/schema.proto", fileDescriptor_c85321006f215ea0)
+}
+
+var fileDescriptor_c85321006f215ea0 = []byte{
+ // 279 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x91, 0x3f, 0x4b, 0xc4, 0x30,
+ 0x18, 0xc6, 0xc9, 0x55, 0x7a, 0xf8, 0x9e, 0x53, 0x16, 0x8b, 0x37, 0xdc, 0x71, 0x20, 0xd4, 0x25,
+ 0xe1, 0x74, 0x74, 0xf2, 0x04, 0x71, 0x12, 0xa9, 0x9b, 0x8b, 0xa4, 0x69, 0xcc, 0x05, 0xd2, 0xbe,
+ 0xa5, 0xff, 0xc0, 0xef, 0xe9, 0x07, 0xf0, 0x63, 0x38, 0x8a, 0x49, 0xcb, 0x65, 0x90, 0x1b, 0x1c,
+ 0xfb, 0xfc, 0x9e, 0xe7, 0x07, 0x6f, 0x03, 0xa9, 0x46, 0xd4, 0x56, 0x71, 0x69, 0xb1, 0x2f, 0x78,
+ 0x21, 0x3a, 0x21, 0x45, 0x27, 0x2c, 0x6a, 0x3e, 0x6c, 0x79, 0x2b, 0xf7, 0xaa, 0x14, 0xac, 0x6e,
+ 0xb0, 0x43, 0xba, 0xf4, 0x4d, 0xe6, 0x9a, 0x2c, 0x68, 0xb2, 0x61, 0x7b, 0xb1, 0x1a, 0x35, 0xa2,
+ 0x36, 0xfc, 0xdd, 0x28, 0x5b, 0xbc, 0xe5, 0x6a, 0x2f, 0x06, 0x83, 0x8d, 0x5f, 0x6f, 0x32, 0x88,
+ 0x5f, 0x9c, 0x8d, 0x3e, 0xc2, 0x5c, 0xa2, 0xed, 0xcb, 0xaa, 0x4d, 0x66, 0xeb, 0x28, 0x5d, 0x5c,
+ 0x5f, 0xb1, 0x23, 0x66, 0x76, 0xef, 0xba, 0x7e, 0xbb, 0x8b, 0xbe, 0xee, 0x66, 0xd9, 0x34, 0xdf,
+ 0x7c, 0x12, 0x38, 0x0b, 0x31, 0x5d, 0x42, 0xec, 0x59, 0x12, 0xaf, 0x49, 0x7a, 0xea, 0xeb, 0x63,
+ 0x44, 0xcf, 0xe1, 0xa4, 0xfb, 0xa8, 0x55, 0x42, 0x0e, 0xc8, 0x05, 0xf4, 0x12, 0x16, 0x85, 0x6a,
+ 0x65, 0x63, 0xea, 0xce, 0x60, 0x95, 0xcc, 0x26, 0x4e, 0xb2, 0x30, 0xff, 0xdd, 0x97, 0x58, 0xa8,
+ 0x24, 0x3a, 0x70, 0x17, 0xd0, 0x27, 0x80, 0xb6, 0xcf, 0xa7, 0x9b, 0xe6, 0xff, 0xb8, 0x89, 0x64,
+ 0x81, 0x61, 0x57, 0xc1, 0x4a, 0x62, 0x79, 0x4c, 0xf0, 0x4c, 0x5e, 0x1f, 0x46, 0xac, 0xd1, 0x8a,
+ 0x4a, 0x33, 0x6c, 0x34, 0xd7, 0xaa, 0x72, 0xff, 0x9a, 0x7b, 0x24, 0x6a, 0xd3, 0xfe, 0xf9, 0xac,
+ 0xb7, 0xc1, 0xe7, 0x37, 0x21, 0x79, 0xec, 0x56, 0x37, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x99,
+ 0x3f, 0x84, 0x20, 0x0b, 0x02, 0x00, 0x00,
+}
diff --git a/googleapis/cloud/datacatalog/v1/search.pb.go b/googleapis/cloud/datacatalog/v1/search.pb.go
new file mode 100644
index 0000000000..e7fd062bbe
--- /dev/null
+++ b/googleapis/cloud/datacatalog/v1/search.pb.go
@@ -0,0 +1,235 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/datacatalog/v1/search.proto
+
+package datacatalog
+
+import (
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ _ "github.com/golang/protobuf/ptypes/timestamp"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// The different types of resources that can be returned in search.
+type SearchResultType int32
+
+const (
+ // Default unknown type.
+ SearchResultType_SEARCH_RESULT_TYPE_UNSPECIFIED SearchResultType = 0
+ // An [Entry][google.cloud.datacatalog.v1.Entry].
+ SearchResultType_ENTRY SearchResultType = 1
+ // A [TagTemplate][google.cloud.datacatalog.v1.TagTemplate].
+ SearchResultType_TAG_TEMPLATE SearchResultType = 2
+ // An [EntryGroup][google.cloud.datacatalog.v1.EntryGroup].
+ SearchResultType_ENTRY_GROUP SearchResultType = 3
+)
+
+var SearchResultType_name = map[int32]string{
+ 0: "SEARCH_RESULT_TYPE_UNSPECIFIED",
+ 1: "ENTRY",
+ 2: "TAG_TEMPLATE",
+ 3: "ENTRY_GROUP",
+}
+
+var SearchResultType_value = map[string]int32{
+ "SEARCH_RESULT_TYPE_UNSPECIFIED": 0,
+ "ENTRY": 1,
+ "TAG_TEMPLATE": 2,
+ "ENTRY_GROUP": 3,
+}
+
+func (x SearchResultType) String() string {
+ return proto.EnumName(SearchResultType_name, int32(x))
+}
+
+func (SearchResultType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_92ea9a51da4a4f11, []int{0}
+}
+
+// A result that appears in the response of a search request. Each result
+// captures details of one entry that matches the search.
+type SearchCatalogResult struct {
+ // Type of the search result. This field can be used to determine which Get
+ // method to call to fetch the full resource.
+ SearchResultType SearchResultType `protobuf:"varint,1,opt,name=search_result_type,json=searchResultType,proto3,enum=google.cloud.datacatalog.v1.SearchResultType" json:"search_result_type,omitempty"`
+ // Sub-type of the search result. This is a dot-delimited description of the
+ // resource's full type, and is the same as the value callers would provide in
+ // the "type" search facet. Examples: `entry.table`, `entry.dataStream`,
+ // `tagTemplate`.
+ SearchResultSubtype string `protobuf:"bytes,2,opt,name=search_result_subtype,json=searchResultSubtype,proto3" json:"search_result_subtype,omitempty"`
+ // The relative resource name of the resource in URL format.
+ // Examples:
+ //
+ // * `projects/{project_id}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}`
+ // * `projects/{project_id}/tagTemplates/{tag_template_id}`
+ RelativeResourceName string `protobuf:"bytes,3,opt,name=relative_resource_name,json=relativeResourceName,proto3" json:"relative_resource_name,omitempty"`
+ // The full name of the cloud resource the entry belongs to. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name.
+ // Example:
+ //
+ // * `//bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId`
+ LinkedResource string `protobuf:"bytes,4,opt,name=linked_resource,json=linkedResource,proto3" json:"linked_resource,omitempty"`
+ // The source system of the entry. Only applicable when `search_result_type`
+ // is ENTRY.
+ //
+ // Types that are valid to be assigned to System:
+ // *SearchCatalogResult_IntegratedSystem
+ // *SearchCatalogResult_UserSpecifiedSystem
+ System isSearchCatalogResult_System `protobuf_oneof:"system"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *SearchCatalogResult) Reset() { *m = SearchCatalogResult{} }
+func (m *SearchCatalogResult) String() string { return proto.CompactTextString(m) }
+func (*SearchCatalogResult) ProtoMessage() {}
+func (*SearchCatalogResult) Descriptor() ([]byte, []int) {
+ return fileDescriptor_92ea9a51da4a4f11, []int{0}
+}
+
+func (m *SearchCatalogResult) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_SearchCatalogResult.Unmarshal(m, b)
+}
+func (m *SearchCatalogResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_SearchCatalogResult.Marshal(b, m, deterministic)
+}
+func (m *SearchCatalogResult) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_SearchCatalogResult.Merge(m, src)
+}
+func (m *SearchCatalogResult) XXX_Size() int {
+ return xxx_messageInfo_SearchCatalogResult.Size(m)
+}
+func (m *SearchCatalogResult) XXX_DiscardUnknown() {
+ xxx_messageInfo_SearchCatalogResult.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SearchCatalogResult proto.InternalMessageInfo
+
+func (m *SearchCatalogResult) GetSearchResultType() SearchResultType {
+ if m != nil {
+ return m.SearchResultType
+ }
+ return SearchResultType_SEARCH_RESULT_TYPE_UNSPECIFIED
+}
+
+func (m *SearchCatalogResult) GetSearchResultSubtype() string {
+ if m != nil {
+ return m.SearchResultSubtype
+ }
+ return ""
+}
+
+func (m *SearchCatalogResult) GetRelativeResourceName() string {
+ if m != nil {
+ return m.RelativeResourceName
+ }
+ return ""
+}
+
+func (m *SearchCatalogResult) GetLinkedResource() string {
+ if m != nil {
+ return m.LinkedResource
+ }
+ return ""
+}
+
+type isSearchCatalogResult_System interface {
+ isSearchCatalogResult_System()
+}
+
+type SearchCatalogResult_IntegratedSystem struct {
+ IntegratedSystem IntegratedSystem `protobuf:"varint,8,opt,name=integrated_system,json=integratedSystem,proto3,enum=google.cloud.datacatalog.v1.IntegratedSystem,oneof"`
+}
+
+type SearchCatalogResult_UserSpecifiedSystem struct {
+ UserSpecifiedSystem string `protobuf:"bytes,9,opt,name=user_specified_system,json=userSpecifiedSystem,proto3,oneof"`
+}
+
+func (*SearchCatalogResult_IntegratedSystem) isSearchCatalogResult_System() {}
+
+func (*SearchCatalogResult_UserSpecifiedSystem) isSearchCatalogResult_System() {}
+
+func (m *SearchCatalogResult) GetSystem() isSearchCatalogResult_System {
+ if m != nil {
+ return m.System
+ }
+ return nil
+}
+
+func (m *SearchCatalogResult) GetIntegratedSystem() IntegratedSystem {
+ if x, ok := m.GetSystem().(*SearchCatalogResult_IntegratedSystem); ok {
+ return x.IntegratedSystem
+ }
+ return IntegratedSystem_INTEGRATED_SYSTEM_UNSPECIFIED
+}
+
+func (m *SearchCatalogResult) GetUserSpecifiedSystem() string {
+ if x, ok := m.GetSystem().(*SearchCatalogResult_UserSpecifiedSystem); ok {
+ return x.UserSpecifiedSystem
+ }
+ return ""
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*SearchCatalogResult) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*SearchCatalogResult_IntegratedSystem)(nil),
+ (*SearchCatalogResult_UserSpecifiedSystem)(nil),
+ }
+}
+
+func init() {
+ proto.RegisterEnum("google.cloud.datacatalog.v1.SearchResultType", SearchResultType_name, SearchResultType_value)
+ proto.RegisterType((*SearchCatalogResult)(nil), "google.cloud.datacatalog.v1.SearchCatalogResult")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/datacatalog/v1/search.proto", fileDescriptor_92ea9a51da4a4f11)
+}
+
+var fileDescriptor_92ea9a51da4a4f11 = []byte{
+ // 459 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0x41, 0x6f, 0xd3, 0x30,
+ 0x1c, 0xc5, 0x9b, 0x15, 0xa6, 0xd5, 0xa0, 0x2d, 0xb8, 0x0c, 0x55, 0x43, 0x62, 0xd3, 0x2e, 0x54,
+ 0x48, 0x24, 0xda, 0xd8, 0x8d, 0x53, 0x57, 0xb2, 0xb5, 0xd2, 0x28, 0x91, 0x93, 0x1e, 0x06, 0x07,
+ 0xcb, 0x4d, 0xfe, 0xcd, 0x2c, 0x92, 0x38, 0xb2, 0x9d, 0x4a, 0xfd, 0x46, 0x7c, 0x2c, 0x3e, 0x06,
+ 0x47, 0x54, 0x3b, 0x1d, 0xa5, 0x42, 0x15, 0x47, 0xff, 0x7f, 0xef, 0x3d, 0x3f, 0x5b, 0x7f, 0xd4,
+ 0xcf, 0x84, 0xc8, 0x72, 0xf0, 0x93, 0x5c, 0xd4, 0xa9, 0x9f, 0x32, 0xcd, 0x12, 0xa6, 0x59, 0x2e,
+ 0x32, 0x7f, 0x71, 0xe1, 0x2b, 0x60, 0x32, 0x79, 0xf0, 0x2a, 0x29, 0xb4, 0xc0, 0xaf, 0xad, 0xd2,
+ 0x33, 0x4a, 0x6f, 0x43, 0xe9, 0x2d, 0x2e, 0x4e, 0x4e, 0x9b, 0x18, 0x56, 0x71, 0x7f, 0xce, 0x21,
+ 0x4f, 0xe9, 0x0c, 0x1e, 0xd8, 0x82, 0x0b, 0x69, 0xdd, 0x27, 0x3b, 0xef, 0x49, 0x44, 0x51, 0x88,
+ 0xb2, 0x51, 0xae, 0xa3, 0xcc, 0x69, 0x56, 0xcf, 0x7d, 0xcd, 0x0b, 0x50, 0x9a, 0x15, 0x95, 0x15,
+ 0x9c, 0xff, 0x68, 0xa3, 0x6e, 0x64, 0x9a, 0x0d, 0x6d, 0x04, 0x01, 0x55, 0xe7, 0x1a, 0x7f, 0x43,
+ 0xd8, 0x16, 0xa6, 0xd2, 0x0c, 0xa8, 0x5e, 0x56, 0xd0, 0x73, 0xce, 0x9c, 0xfe, 0xe1, 0xe5, 0x7b,
+ 0x6f, 0x47, 0x7b, 0xcf, 0xa6, 0xd9, 0x98, 0x78, 0x59, 0x01, 0x71, 0xd5, 0xd6, 0x04, 0x5f, 0xa2,
+ 0xe3, 0xbf, 0xc3, 0x55, 0x3d, 0x33, 0xf9, 0x7b, 0x67, 0x4e, 0xbf, 0x43, 0xba, 0x9b, 0x86, 0xc8,
+ 0x22, 0x7c, 0x85, 0x5e, 0x49, 0xc8, 0x99, 0xe6, 0x0b, 0x58, 0xb9, 0x44, 0x2d, 0x13, 0xa0, 0x25,
+ 0x2b, 0xa0, 0xd7, 0x36, 0xa6, 0x97, 0x6b, 0x4a, 0x1a, 0x38, 0x61, 0x05, 0xe0, 0xb7, 0xe8, 0x28,
+ 0xe7, 0xe5, 0x77, 0x48, 0x1f, 0x3d, 0xbd, 0x27, 0x46, 0x7e, 0x68, 0xc7, 0x6b, 0x31, 0x66, 0xe8,
+ 0x05, 0x2f, 0x35, 0x64, 0x92, 0x69, 0x48, 0xa9, 0x5a, 0x2a, 0x0d, 0x45, 0xef, 0xe0, 0x3f, 0x9e,
+ 0x3b, 0x7e, 0x74, 0x45, 0xc6, 0x74, 0xdd, 0xfe, 0x39, 0x68, 0x8f, 0x5a, 0xc4, 0xe5, 0x5b, 0x00,
+ 0x5f, 0xa1, 0xe3, 0x5a, 0x81, 0xa4, 0xaa, 0x82, 0x84, 0xcf, 0xf9, 0x9f, 0x6b, 0x3a, 0xab, 0x46,
+ 0xa3, 0x16, 0xe9, 0xae, 0x70, 0xb4, 0xa6, 0x4d, 0xdc, 0x01, 0xda, 0xb7, 0xb2, 0x77, 0x29, 0x72,
+ 0xb7, 0xff, 0x16, 0x9f, 0xa3, 0x37, 0x51, 0x30, 0x20, 0xc3, 0x11, 0x25, 0x41, 0x34, 0xbd, 0x8b,
+ 0x69, 0x7c, 0x1f, 0x06, 0x74, 0x3a, 0x89, 0xc2, 0x60, 0x38, 0xbe, 0x19, 0x07, 0x9f, 0xdc, 0x16,
+ 0xee, 0xa0, 0xa7, 0xc1, 0x24, 0x26, 0xf7, 0xae, 0x83, 0x5d, 0xf4, 0x3c, 0x1e, 0xdc, 0xd2, 0x38,
+ 0xf8, 0x1c, 0xde, 0x0d, 0xe2, 0xc0, 0xdd, 0xc3, 0x47, 0xe8, 0x99, 0x81, 0xf4, 0x96, 0x7c, 0x99,
+ 0x86, 0x6e, 0xfb, 0xba, 0x44, 0xa7, 0x89, 0x28, 0x76, 0x3d, 0x39, 0x74, 0xbe, 0xde, 0x34, 0x38,
+ 0x13, 0x39, 0x2b, 0x33, 0x4f, 0xc8, 0xcc, 0xcf, 0xa0, 0x34, 0x1b, 0xe5, 0x5b, 0xc4, 0x2a, 0xae,
+ 0xfe, 0xb9, 0x9f, 0x1f, 0x37, 0x8e, 0xbf, 0x1c, 0x67, 0xb6, 0x6f, 0x5c, 0x1f, 0x7e, 0x07, 0x00,
+ 0x00, 0xff, 0xff, 0x0c, 0xf2, 0xd1, 0xef, 0x3c, 0x03, 0x00, 0x00,
+}
diff --git a/googleapis/cloud/datacatalog/v1/table_spec.pb.go b/googleapis/cloud/datacatalog/v1/table_spec.pb.go
new file mode 100644
index 0000000000..1aecc8b2d9
--- /dev/null
+++ b/googleapis/cloud/datacatalog/v1/table_spec.pb.go
@@ -0,0 +1,346 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/datacatalog/v1/table_spec.proto
+
+package datacatalog
+
+import (
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// Table source type.
+type TableSourceType int32
+
+const (
+ // Default unknown type.
+ TableSourceType_TABLE_SOURCE_TYPE_UNSPECIFIED TableSourceType = 0
+ // Table view.
+ TableSourceType_BIGQUERY_VIEW TableSourceType = 2
+ // BigQuery native table.
+ TableSourceType_BIGQUERY_TABLE TableSourceType = 5
+)
+
+var TableSourceType_name = map[int32]string{
+ 0: "TABLE_SOURCE_TYPE_UNSPECIFIED",
+ 2: "BIGQUERY_VIEW",
+ 5: "BIGQUERY_TABLE",
+}
+
+var TableSourceType_value = map[string]int32{
+ "TABLE_SOURCE_TYPE_UNSPECIFIED": 0,
+ "BIGQUERY_VIEW": 2,
+ "BIGQUERY_TABLE": 5,
+}
+
+func (x TableSourceType) String() string {
+ return proto.EnumName(TableSourceType_name, int32(x))
+}
+
+func (TableSourceType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_814ae4af8db07be9, []int{0}
+}
+
+// Describes a BigQuery table.
+type BigQueryTableSpec struct {
+ // Output only. The table source type.
+ TableSourceType TableSourceType `protobuf:"varint,1,opt,name=table_source_type,json=tableSourceType,proto3,enum=google.cloud.datacatalog.v1.TableSourceType" json:"table_source_type,omitempty"`
+ // Output only.
+ //
+ // Types that are valid to be assigned to TypeSpec:
+ // *BigQueryTableSpec_ViewSpec
+ // *BigQueryTableSpec_TableSpec
+ TypeSpec isBigQueryTableSpec_TypeSpec `protobuf_oneof:"type_spec"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *BigQueryTableSpec) Reset() { *m = BigQueryTableSpec{} }
+func (m *BigQueryTableSpec) String() string { return proto.CompactTextString(m) }
+func (*BigQueryTableSpec) ProtoMessage() {}
+func (*BigQueryTableSpec) Descriptor() ([]byte, []int) {
+ return fileDescriptor_814ae4af8db07be9, []int{0}
+}
+
+func (m *BigQueryTableSpec) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_BigQueryTableSpec.Unmarshal(m, b)
+}
+func (m *BigQueryTableSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_BigQueryTableSpec.Marshal(b, m, deterministic)
+}
+func (m *BigQueryTableSpec) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_BigQueryTableSpec.Merge(m, src)
+}
+func (m *BigQueryTableSpec) XXX_Size() int {
+ return xxx_messageInfo_BigQueryTableSpec.Size(m)
+}
+func (m *BigQueryTableSpec) XXX_DiscardUnknown() {
+ xxx_messageInfo_BigQueryTableSpec.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_BigQueryTableSpec proto.InternalMessageInfo
+
+func (m *BigQueryTableSpec) GetTableSourceType() TableSourceType {
+ if m != nil {
+ return m.TableSourceType
+ }
+ return TableSourceType_TABLE_SOURCE_TYPE_UNSPECIFIED
+}
+
+type isBigQueryTableSpec_TypeSpec interface {
+ isBigQueryTableSpec_TypeSpec()
+}
+
+type BigQueryTableSpec_ViewSpec struct {
+ ViewSpec *ViewSpec `protobuf:"bytes,2,opt,name=view_spec,json=viewSpec,proto3,oneof"`
+}
+
+type BigQueryTableSpec_TableSpec struct {
+ TableSpec *TableSpec `protobuf:"bytes,3,opt,name=table_spec,json=tableSpec,proto3,oneof"`
+}
+
+func (*BigQueryTableSpec_ViewSpec) isBigQueryTableSpec_TypeSpec() {}
+
+func (*BigQueryTableSpec_TableSpec) isBigQueryTableSpec_TypeSpec() {}
+
+func (m *BigQueryTableSpec) GetTypeSpec() isBigQueryTableSpec_TypeSpec {
+ if m != nil {
+ return m.TypeSpec
+ }
+ return nil
+}
+
+func (m *BigQueryTableSpec) GetViewSpec() *ViewSpec {
+ if x, ok := m.GetTypeSpec().(*BigQueryTableSpec_ViewSpec); ok {
+ return x.ViewSpec
+ }
+ return nil
+}
+
+func (m *BigQueryTableSpec) GetTableSpec() *TableSpec {
+ if x, ok := m.GetTypeSpec().(*BigQueryTableSpec_TableSpec); ok {
+ return x.TableSpec
+ }
+ return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*BigQueryTableSpec) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*BigQueryTableSpec_ViewSpec)(nil),
+ (*BigQueryTableSpec_TableSpec)(nil),
+ }
+}
+
+// Table view specification.
+type ViewSpec struct {
+ // Output only. The query that defines the table view.
+ ViewQuery string `protobuf:"bytes,1,opt,name=view_query,json=viewQuery,proto3" json:"view_query,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ViewSpec) Reset() { *m = ViewSpec{} }
+func (m *ViewSpec) String() string { return proto.CompactTextString(m) }
+func (*ViewSpec) ProtoMessage() {}
+func (*ViewSpec) Descriptor() ([]byte, []int) {
+ return fileDescriptor_814ae4af8db07be9, []int{1}
+}
+
+func (m *ViewSpec) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ViewSpec.Unmarshal(m, b)
+}
+func (m *ViewSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ViewSpec.Marshal(b, m, deterministic)
+}
+func (m *ViewSpec) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ViewSpec.Merge(m, src)
+}
+func (m *ViewSpec) XXX_Size() int {
+ return xxx_messageInfo_ViewSpec.Size(m)
+}
+func (m *ViewSpec) XXX_DiscardUnknown() {
+ xxx_messageInfo_ViewSpec.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ViewSpec proto.InternalMessageInfo
+
+func (m *ViewSpec) GetViewQuery() string {
+ if m != nil {
+ return m.ViewQuery
+ }
+ return ""
+}
+
+// Normal BigQuery table spec.
+type TableSpec struct {
+ // Output only. If the table is a dated shard, i.e., with name pattern `[prefix]YYYYMMDD`,
+ // `grouped_entry` is the Data Catalog resource name of the date sharded
+ // grouped entry, for example,
+ // `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}`.
+ // Otherwise, `grouped_entry` is empty.
+ GroupedEntry string `protobuf:"bytes,1,opt,name=grouped_entry,json=groupedEntry,proto3" json:"grouped_entry,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TableSpec) Reset() { *m = TableSpec{} }
+func (m *TableSpec) String() string { return proto.CompactTextString(m) }
+func (*TableSpec) ProtoMessage() {}
+func (*TableSpec) Descriptor() ([]byte, []int) {
+ return fileDescriptor_814ae4af8db07be9, []int{2}
+}
+
+func (m *TableSpec) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TableSpec.Unmarshal(m, b)
+}
+func (m *TableSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TableSpec.Marshal(b, m, deterministic)
+}
+func (m *TableSpec) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TableSpec.Merge(m, src)
+}
+func (m *TableSpec) XXX_Size() int {
+ return xxx_messageInfo_TableSpec.Size(m)
+}
+func (m *TableSpec) XXX_DiscardUnknown() {
+ xxx_messageInfo_TableSpec.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TableSpec proto.InternalMessageInfo
+
+func (m *TableSpec) GetGroupedEntry() string {
+ if m != nil {
+ return m.GroupedEntry
+ }
+ return ""
+}
+
+// Spec for a group of BigQuery tables with name pattern `[prefix]YYYYMMDD`.
+// Context:
+// https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding
+type BigQueryDateShardedSpec struct {
+ // Output only. The Data Catalog resource name of the dataset entry the current table
+ // belongs to, for example,
+ // `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}`.
+ Dataset string `protobuf:"bytes,1,opt,name=dataset,proto3" json:"dataset,omitempty"`
+ // Output only. The table name prefix of the shards. The name of any given shard is
+ // `[table_prefix]YYYYMMDD`, for example, for shard `MyTable20180101`, the
+ // `table_prefix` is `MyTable`.
+ TablePrefix string `protobuf:"bytes,2,opt,name=table_prefix,json=tablePrefix,proto3" json:"table_prefix,omitempty"`
+ // Output only. Total number of shards.
+ ShardCount int64 `protobuf:"varint,3,opt,name=shard_count,json=shardCount,proto3" json:"shard_count,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *BigQueryDateShardedSpec) Reset() { *m = BigQueryDateShardedSpec{} }
+func (m *BigQueryDateShardedSpec) String() string { return proto.CompactTextString(m) }
+func (*BigQueryDateShardedSpec) ProtoMessage() {}
+func (*BigQueryDateShardedSpec) Descriptor() ([]byte, []int) {
+ return fileDescriptor_814ae4af8db07be9, []int{3}
+}
+
+func (m *BigQueryDateShardedSpec) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_BigQueryDateShardedSpec.Unmarshal(m, b)
+}
+func (m *BigQueryDateShardedSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_BigQueryDateShardedSpec.Marshal(b, m, deterministic)
+}
+func (m *BigQueryDateShardedSpec) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_BigQueryDateShardedSpec.Merge(m, src)
+}
+func (m *BigQueryDateShardedSpec) XXX_Size() int {
+ return xxx_messageInfo_BigQueryDateShardedSpec.Size(m)
+}
+func (m *BigQueryDateShardedSpec) XXX_DiscardUnknown() {
+ xxx_messageInfo_BigQueryDateShardedSpec.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_BigQueryDateShardedSpec proto.InternalMessageInfo
+
+func (m *BigQueryDateShardedSpec) GetDataset() string {
+ if m != nil {
+ return m.Dataset
+ }
+ return ""
+}
+
+func (m *BigQueryDateShardedSpec) GetTablePrefix() string {
+ if m != nil {
+ return m.TablePrefix
+ }
+ return ""
+}
+
+func (m *BigQueryDateShardedSpec) GetShardCount() int64 {
+ if m != nil {
+ return m.ShardCount
+ }
+ return 0
+}
+
+func init() {
+ proto.RegisterEnum("google.cloud.datacatalog.v1.TableSourceType", TableSourceType_name, TableSourceType_value)
+ proto.RegisterType((*BigQueryTableSpec)(nil), "google.cloud.datacatalog.v1.BigQueryTableSpec")
+ proto.RegisterType((*ViewSpec)(nil), "google.cloud.datacatalog.v1.ViewSpec")
+ proto.RegisterType((*TableSpec)(nil), "google.cloud.datacatalog.v1.TableSpec")
+ proto.RegisterType((*BigQueryDateShardedSpec)(nil), "google.cloud.datacatalog.v1.BigQueryDateShardedSpec")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/datacatalog/v1/table_spec.proto", fileDescriptor_814ae4af8db07be9)
+}
+
+var fileDescriptor_814ae4af8db07be9 = []byte{
+ // 501 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x53, 0xcd, 0x6e, 0xd3, 0x5c,
+ 0x10, 0xad, 0x13, 0x7d, 0x1f, 0xf5, 0xa4, 0x3f, 0xc9, 0xdd, 0x10, 0x8a, 0x50, 0x83, 0x05, 0x55,
+ 0x84, 0x2a, 0x5b, 0x2d, 0x4b, 0x56, 0x71, 0xe2, 0x96, 0x48, 0xfc, 0xa4, 0x4e, 0x52, 0xd4, 0x22,
+ 0x64, 0xdd, 0xd8, 0x53, 0xd7, 0x92, 0xeb, 0x6b, 0xec, 0x6b, 0x97, 0xbc, 0x04, 0x2f, 0xc2, 0x4b,
+ 0xf5, 0x31, 0x10, 0x2b, 0xe4, 0xb1, 0xd3, 0x04, 0x84, 0x22, 0xd8, 0xe5, 0xce, 0x9c, 0x73, 0xe6,
+ 0xcc, 0x99, 0x18, 0x0e, 0x7d, 0x21, 0xfc, 0x10, 0x0d, 0x37, 0x14, 0x99, 0x67, 0x78, 0x5c, 0x72,
+ 0x97, 0x4b, 0x1e, 0x0a, 0xdf, 0xc8, 0x8f, 0x0c, 0xc9, 0x67, 0x21, 0x3a, 0x69, 0x8c, 0xae, 0x1e,
+ 0x27, 0x42, 0x0a, 0xf6, 0xb8, 0x44, 0xeb, 0x84, 0xd6, 0x57, 0xd0, 0x7a, 0x7e, 0xb4, 0xb7, 0x5f,
+ 0x49, 0xf1, 0x38, 0x30, 0xae, 0x02, 0x0c, 0x3d, 0x67, 0x86, 0xd7, 0x3c, 0x0f, 0x44, 0x52, 0xb2,
+ 0xf7, 0x1e, 0xad, 0x00, 0x12, 0x4c, 0x45, 0x96, 0xb8, 0x58, 0xb6, 0xb4, 0xaf, 0x35, 0x68, 0x99,
+ 0x81, 0x7f, 0x96, 0x61, 0x32, 0x9f, 0x14, 0x53, 0xc7, 0x31, 0xba, 0xec, 0x13, 0xb4, 0x2a, 0x0b,
+ 0x84, 0x75, 0xe4, 0x3c, 0xc6, 0xb6, 0xd2, 0x51, 0xba, 0x3b, 0xc7, 0x87, 0xfa, 0x1a, 0x2b, 0x7a,
+ 0x29, 0x41, 0xa4, 0xc9, 0x3c, 0x46, 0xb3, 0x7e, 0xd7, 0xab, 0xdb, 0xbb, 0xf2, 0xd7, 0x2a, 0x1b,
+ 0x80, 0x9a, 0x07, 0x78, 0x4b, 0x0b, 0xb6, 0x6b, 0x1d, 0xa5, 0xdb, 0x38, 0x7e, 0xbe, 0x56, 0xf6,
+ 0x3c, 0xc0, 0xdb, 0xc2, 0xd8, 0xeb, 0x0d, 0x7b, 0x33, 0xaf, 0x7e, 0xb3, 0x53, 0x80, 0x65, 0x4e,
+ 0xed, 0x3a, 0xc9, 0x1c, 0xfc, 0x85, 0xbb, 0x52, 0x47, 0x95, 0x8b, 0x87, 0xd9, 0x00, 0xb5, 0x58,
+ 0x90, 0x74, 0x34, 0x1d, 0x36, 0x17, 0xd3, 0x98, 0x06, 0x40, 0x3e, 0x3f, 0x17, 0xe9, 0xd0, 0xfe,
+ 0x6a, 0xb9, 0x11, 0xd9, 0xa7, 0xcc, 0xb4, 0x4b, 0x50, 0x97, 0xb9, 0xbd, 0x85, 0x6d, 0x3f, 0x11,
+ 0x59, 0x8c, 0x9e, 0x83, 0x91, 0xbc, 0xe7, 0x74, 0xef, 0x7a, 0xf5, 0x1f, 0x3d, 0x0d, 0x3a, 0xab,
+ 0x7e, 0x4a, 0xa3, 0x3c, 0x0e, 0x52, 0xdd, 0x15, 0x37, 0x86, 0x55, 0xe0, 0xed, 0xad, 0x8a, 0x4e,
+ 0x2f, 0xed, 0x9b, 0x02, 0x0f, 0x17, 0xc7, 0x19, 0x70, 0x89, 0xe3, 0x6b, 0x9e, 0x78, 0xe8, 0xd1,
+ 0x28, 0x13, 0x1e, 0x14, 0x6a, 0x29, 0xca, 0x7f, 0x1e, 0xb2, 0x20, 0xb2, 0x03, 0xd8, 0x2a, 0x13,
+ 0x8c, 0x13, 0xbc, 0x0a, 0xbe, 0xd0, 0x29, 0xaa, 0x0d, 0x1b, 0xd4, 0x18, 0x51, 0x9d, 0x3d, 0x83,
+ 0x46, 0x5a, 0x8c, 0x76, 0x5c, 0x91, 0x45, 0x92, 0xa2, 0xae, 0x97, 0x30, 0xa0, 0x7a, 0xbf, 0x28,
+ 0xbf, 0xf8, 0x08, 0xbb, 0xbf, 0x9d, 0x9f, 0x3d, 0x85, 0x27, 0x93, 0x9e, 0xf9, 0xc6, 0x72, 0xc6,
+ 0xef, 0xa7, 0x76, 0xdf, 0x72, 0x26, 0x17, 0x23, 0xcb, 0x99, 0xbe, 0x1b, 0x8f, 0xac, 0xfe, 0xf0,
+ 0x64, 0x68, 0x0d, 0x9a, 0x1b, 0xac, 0x05, 0xdb, 0xe6, 0xf0, 0xf4, 0x6c, 0x6a, 0xd9, 0x17, 0xce,
+ 0xf9, 0xd0, 0xfa, 0xd0, 0xac, 0x31, 0x06, 0x3b, 0xf7, 0x25, 0xa2, 0x37, 0xff, 0x33, 0x23, 0xd8,
+ 0x77, 0xc5, 0xcd, 0xba, 0xeb, 0x8e, 0x94, 0xcb, 0x93, 0xaa, 0xed, 0x8b, 0x90, 0x47, 0xbe, 0x2e,
+ 0x12, 0xdf, 0xf0, 0x31, 0xa2, 0x3f, 0xba, 0xb1, 0x4c, 0xe2, 0x8f, 0x9f, 0xdc, 0xab, 0x95, 0xe7,
+ 0x77, 0x45, 0x99, 0xfd, 0x4f, 0xac, 0x97, 0x3f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xd2, 0x35, 0x15,
+ 0x59, 0xa7, 0x03, 0x00, 0x00,
+}
diff --git a/googleapis/cloud/datacatalog/v1/tags.pb.go b/googleapis/cloud/datacatalog/v1/tags.pb.go
new file mode 100644
index 0000000000..ff6754feba
--- /dev/null
+++ b/googleapis/cloud/datacatalog/v1/tags.pb.go
@@ -0,0 +1,786 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/datacatalog/v1/tags.proto
+
+package datacatalog
+
+import (
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ timestamp "github.com/golang/protobuf/ptypes/timestamp"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+type FieldType_PrimitiveType int32
+
+const (
+ // This is the default invalid value for a type.
+ FieldType_PRIMITIVE_TYPE_UNSPECIFIED FieldType_PrimitiveType = 0
+ // A double precision number.
+ FieldType_DOUBLE FieldType_PrimitiveType = 1
+ // An UTF-8 string.
+ FieldType_STRING FieldType_PrimitiveType = 2
+ // A boolean value.
+ FieldType_BOOL FieldType_PrimitiveType = 3
+ // A timestamp.
+ FieldType_TIMESTAMP FieldType_PrimitiveType = 4
+)
+
+var FieldType_PrimitiveType_name = map[int32]string{
+ 0: "PRIMITIVE_TYPE_UNSPECIFIED",
+ 1: "DOUBLE",
+ 2: "STRING",
+ 3: "BOOL",
+ 4: "TIMESTAMP",
+}
+
+var FieldType_PrimitiveType_value = map[string]int32{
+ "PRIMITIVE_TYPE_UNSPECIFIED": 0,
+ "DOUBLE": 1,
+ "STRING": 2,
+ "BOOL": 3,
+ "TIMESTAMP": 4,
+}
+
+func (x FieldType_PrimitiveType) String() string {
+ return proto.EnumName(FieldType_PrimitiveType_name, int32(x))
+}
+
+func (FieldType_PrimitiveType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{4, 0}
+}
+
+// Tags are used to attach custom metadata to Data Catalog resources. Tags
+// conform to the specifications within their tag template.
+//
+// See [Data Catalog IAM](/data-catalog/docs/concepts/iam) for information on
+// the permissions needed to create or view tags.
+type Tag struct {
+ // The resource name of the tag in URL format. Example:
+ //
+ // * projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id}
+ //
+ // where `tag_id` is a system-generated identifier.
+ // Note that this Tag may not actually be stored in the location in this name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The resource name of the tag template that this tag uses. Example:
+ //
+ // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
+ //
+ // This field cannot be modified after creation.
+ Template string `protobuf:"bytes,2,opt,name=template,proto3" json:"template,omitempty"`
+ // Output only. The display name of the tag template.
+ TemplateDisplayName string `protobuf:"bytes,5,opt,name=template_display_name,json=templateDisplayName,proto3" json:"template_display_name,omitempty"`
+ // The scope within the parent resource that this tag is attached to. If not
+ // provided, the tag is attached to the parent resource itself.
+ // Deleting the scope from the parent resource will delete all tags attached
+ // to that scope. These fields cannot be updated after creation.
+ //
+ // Types that are valid to be assigned to Scope:
+ // *Tag_Column
+ Scope isTag_Scope `protobuf_oneof:"scope"`
+ // Required. This maps the ID of a tag field to the value of and additional information
+ // about that field. Valid field IDs are defined by the tag's template. A tag
+ // must have at least 1 field and at most 500 fields.
+ Fields map[string]*TagField `protobuf:"bytes,3,rep,name=fields,proto3" json:"fields,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Tag) Reset() { *m = Tag{} }
+func (m *Tag) String() string { return proto.CompactTextString(m) }
+func (*Tag) ProtoMessage() {}
+func (*Tag) Descriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{0}
+}
+
+func (m *Tag) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Tag.Unmarshal(m, b)
+}
+func (m *Tag) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Tag.Marshal(b, m, deterministic)
+}
+func (m *Tag) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Tag.Merge(m, src)
+}
+func (m *Tag) XXX_Size() int {
+ return xxx_messageInfo_Tag.Size(m)
+}
+func (m *Tag) XXX_DiscardUnknown() {
+ xxx_messageInfo_Tag.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Tag proto.InternalMessageInfo
+
+func (m *Tag) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *Tag) GetTemplate() string {
+ if m != nil {
+ return m.Template
+ }
+ return ""
+}
+
+func (m *Tag) GetTemplateDisplayName() string {
+ if m != nil {
+ return m.TemplateDisplayName
+ }
+ return ""
+}
+
+type isTag_Scope interface {
+ isTag_Scope()
+}
+
+type Tag_Column struct {
+ Column string `protobuf:"bytes,4,opt,name=column,proto3,oneof"`
+}
+
+func (*Tag_Column) isTag_Scope() {}
+
+func (m *Tag) GetScope() isTag_Scope {
+ if m != nil {
+ return m.Scope
+ }
+ return nil
+}
+
+func (m *Tag) GetColumn() string {
+ if x, ok := m.GetScope().(*Tag_Column); ok {
+ return x.Column
+ }
+ return ""
+}
+
+func (m *Tag) GetFields() map[string]*TagField {
+ if m != nil {
+ return m.Fields
+ }
+ return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*Tag) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*Tag_Column)(nil),
+ }
+}
+
+// Contains the value and supporting information for a field within
+// a [Tag][google.cloud.datacatalog.v1.Tag].
+type TagField struct {
+ // Output only. The display name of this field.
+ DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Required. The value of this field.
+ //
+ // Types that are valid to be assigned to Kind:
+ // *TagField_DoubleValue
+ // *TagField_StringValue
+ // *TagField_BoolValue
+ // *TagField_TimestampValue
+ // *TagField_EnumValue_
+ Kind isTagField_Kind `protobuf_oneof:"kind"`
+ // Output only. The order of this field with respect to other fields in this tag. It can be
+ // set in [Tag][google.cloud.datacatalog.v1.TagTemplateField.order]. For
+ // example, a higher value can indicate a more important field. The value can
+ // be negative. Multiple fields can have the same order, and field orders
+ // within a tag do not have to be sequential.
+ Order int32 `protobuf:"varint,7,opt,name=order,proto3" json:"order,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TagField) Reset() { *m = TagField{} }
+func (m *TagField) String() string { return proto.CompactTextString(m) }
+func (*TagField) ProtoMessage() {}
+func (*TagField) Descriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{1}
+}
+
+func (m *TagField) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TagField.Unmarshal(m, b)
+}
+func (m *TagField) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TagField.Marshal(b, m, deterministic)
+}
+func (m *TagField) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TagField.Merge(m, src)
+}
+func (m *TagField) XXX_Size() int {
+ return xxx_messageInfo_TagField.Size(m)
+}
+func (m *TagField) XXX_DiscardUnknown() {
+ xxx_messageInfo_TagField.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TagField proto.InternalMessageInfo
+
+func (m *TagField) GetDisplayName() string {
+ if m != nil {
+ return m.DisplayName
+ }
+ return ""
+}
+
+type isTagField_Kind interface {
+ isTagField_Kind()
+}
+
+type TagField_DoubleValue struct {
+ DoubleValue float64 `protobuf:"fixed64,2,opt,name=double_value,json=doubleValue,proto3,oneof"`
+}
+
+type TagField_StringValue struct {
+ StringValue string `protobuf:"bytes,3,opt,name=string_value,json=stringValue,proto3,oneof"`
+}
+
+type TagField_BoolValue struct {
+ BoolValue bool `protobuf:"varint,4,opt,name=bool_value,json=boolValue,proto3,oneof"`
+}
+
+type TagField_TimestampValue struct {
+ TimestampValue *timestamp.Timestamp `protobuf:"bytes,5,opt,name=timestamp_value,json=timestampValue,proto3,oneof"`
+}
+
+type TagField_EnumValue_ struct {
+ EnumValue *TagField_EnumValue `protobuf:"bytes,6,opt,name=enum_value,json=enumValue,proto3,oneof"`
+}
+
+func (*TagField_DoubleValue) isTagField_Kind() {}
+
+func (*TagField_StringValue) isTagField_Kind() {}
+
+func (*TagField_BoolValue) isTagField_Kind() {}
+
+func (*TagField_TimestampValue) isTagField_Kind() {}
+
+func (*TagField_EnumValue_) isTagField_Kind() {}
+
+func (m *TagField) GetKind() isTagField_Kind {
+ if m != nil {
+ return m.Kind
+ }
+ return nil
+}
+
+func (m *TagField) GetDoubleValue() float64 {
+ if x, ok := m.GetKind().(*TagField_DoubleValue); ok {
+ return x.DoubleValue
+ }
+ return 0
+}
+
+func (m *TagField) GetStringValue() string {
+ if x, ok := m.GetKind().(*TagField_StringValue); ok {
+ return x.StringValue
+ }
+ return ""
+}
+
+func (m *TagField) GetBoolValue() bool {
+ if x, ok := m.GetKind().(*TagField_BoolValue); ok {
+ return x.BoolValue
+ }
+ return false
+}
+
+func (m *TagField) GetTimestampValue() *timestamp.Timestamp {
+ if x, ok := m.GetKind().(*TagField_TimestampValue); ok {
+ return x.TimestampValue
+ }
+ return nil
+}
+
+func (m *TagField) GetEnumValue() *TagField_EnumValue {
+ if x, ok := m.GetKind().(*TagField_EnumValue_); ok {
+ return x.EnumValue
+ }
+ return nil
+}
+
+func (m *TagField) GetOrder() int32 {
+ if m != nil {
+ return m.Order
+ }
+ return 0
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*TagField) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*TagField_DoubleValue)(nil),
+ (*TagField_StringValue)(nil),
+ (*TagField_BoolValue)(nil),
+ (*TagField_TimestampValue)(nil),
+ (*TagField_EnumValue_)(nil),
+ }
+}
+
+// Holds an enum value.
+type TagField_EnumValue struct {
+ // The display name of the enum value.
+ DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TagField_EnumValue) Reset() { *m = TagField_EnumValue{} }
+func (m *TagField_EnumValue) String() string { return proto.CompactTextString(m) }
+func (*TagField_EnumValue) ProtoMessage() {}
+func (*TagField_EnumValue) Descriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{1, 0}
+}
+
+func (m *TagField_EnumValue) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TagField_EnumValue.Unmarshal(m, b)
+}
+func (m *TagField_EnumValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TagField_EnumValue.Marshal(b, m, deterministic)
+}
+func (m *TagField_EnumValue) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TagField_EnumValue.Merge(m, src)
+}
+func (m *TagField_EnumValue) XXX_Size() int {
+ return xxx_messageInfo_TagField_EnumValue.Size(m)
+}
+func (m *TagField_EnumValue) XXX_DiscardUnknown() {
+ xxx_messageInfo_TagField_EnumValue.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TagField_EnumValue proto.InternalMessageInfo
+
+func (m *TagField_EnumValue) GetDisplayName() string {
+ if m != nil {
+ return m.DisplayName
+ }
+ return ""
+}
+
+// A tag template defines a tag, which can have one or more typed fields.
+// The template is used to create and attach the tag to GCP resources.
+// [Tag template roles](/iam/docs/understanding-roles#data-catalog-roles)
+// provide permissions to create, edit, and use the template. See, for example,
+// the [TagTemplate User](/data-catalog/docs/how-to/template-user) role, which
+// includes permission to use the tag template to tag resources.
+type TagTemplate struct {
+ // The resource name of the tag template in URL format. Example:
+ //
+ // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
+ //
+ // Note that this TagTemplate and its child resources may not actually be
+ // stored in the location in this name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The display name for this template. Defaults to an empty string.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Required. Map of tag template field IDs to the settings for the field.
+ // This map is an exhaustive list of the allowed fields. This map must contain
+ // at least one field and at most 500 fields.
+ //
+ // The keys to this map are tag template field IDs. Field IDs can contain
+ // letters (both uppercase and lowercase), numbers (0-9) and underscores (_).
+ // Field IDs must be at least 1 character long and at most
+ // 64 characters long. Field IDs must start with a letter or underscore.
+ Fields map[string]*TagTemplateField `protobuf:"bytes,3,rep,name=fields,proto3" json:"fields,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TagTemplate) Reset() { *m = TagTemplate{} }
+func (m *TagTemplate) String() string { return proto.CompactTextString(m) }
+func (*TagTemplate) ProtoMessage() {}
+func (*TagTemplate) Descriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{2}
+}
+
+func (m *TagTemplate) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TagTemplate.Unmarshal(m, b)
+}
+func (m *TagTemplate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TagTemplate.Marshal(b, m, deterministic)
+}
+func (m *TagTemplate) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TagTemplate.Merge(m, src)
+}
+func (m *TagTemplate) XXX_Size() int {
+ return xxx_messageInfo_TagTemplate.Size(m)
+}
+func (m *TagTemplate) XXX_DiscardUnknown() {
+ xxx_messageInfo_TagTemplate.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TagTemplate proto.InternalMessageInfo
+
+func (m *TagTemplate) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *TagTemplate) GetDisplayName() string {
+ if m != nil {
+ return m.DisplayName
+ }
+ return ""
+}
+
+func (m *TagTemplate) GetFields() map[string]*TagTemplateField {
+ if m != nil {
+ return m.Fields
+ }
+ return nil
+}
+
+// The template for an individual field within a tag template.
+type TagTemplateField struct {
+ // Output only. The resource name of the tag template field in URL format. Example:
+ //
+ // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template}/fields/{field}
+ //
+ // Note that this TagTemplateField may not actually be stored in the location
+ // in this name.
+ Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
+ // The display name for this field. Defaults to an empty string.
+ DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Required. The type of value this tag field can contain.
+ Type *FieldType `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
+ // Whether this is a required field. Defaults to false.
+ IsRequired bool `protobuf:"varint,3,opt,name=is_required,json=isRequired,proto3" json:"is_required,omitempty"`
+ // The order of this field with respect to other fields in this tag
+ // template. For example, a higher value can indicate a more important field.
+ // The value can be negative. Multiple fields can have the same order, and
+ // field orders within a tag do not have to be sequential.
+ Order int32 `protobuf:"varint,5,opt,name=order,proto3" json:"order,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TagTemplateField) Reset() { *m = TagTemplateField{} }
+func (m *TagTemplateField) String() string { return proto.CompactTextString(m) }
+func (*TagTemplateField) ProtoMessage() {}
+func (*TagTemplateField) Descriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{3}
+}
+
+func (m *TagTemplateField) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TagTemplateField.Unmarshal(m, b)
+}
+func (m *TagTemplateField) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TagTemplateField.Marshal(b, m, deterministic)
+}
+func (m *TagTemplateField) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TagTemplateField.Merge(m, src)
+}
+func (m *TagTemplateField) XXX_Size() int {
+ return xxx_messageInfo_TagTemplateField.Size(m)
+}
+func (m *TagTemplateField) XXX_DiscardUnknown() {
+ xxx_messageInfo_TagTemplateField.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TagTemplateField proto.InternalMessageInfo
+
+func (m *TagTemplateField) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *TagTemplateField) GetDisplayName() string {
+ if m != nil {
+ return m.DisplayName
+ }
+ return ""
+}
+
+func (m *TagTemplateField) GetType() *FieldType {
+ if m != nil {
+ return m.Type
+ }
+ return nil
+}
+
+func (m *TagTemplateField) GetIsRequired() bool {
+ if m != nil {
+ return m.IsRequired
+ }
+ return false
+}
+
+func (m *TagTemplateField) GetOrder() int32 {
+ if m != nil {
+ return m.Order
+ }
+ return 0
+}
+
+type FieldType struct {
+ // Required.
+ //
+ // Types that are valid to be assigned to TypeDecl:
+ // *FieldType_PrimitiveType_
+ // *FieldType_EnumType_
+ TypeDecl isFieldType_TypeDecl `protobuf_oneof:"type_decl"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *FieldType) Reset() { *m = FieldType{} }
+func (m *FieldType) String() string { return proto.CompactTextString(m) }
+func (*FieldType) ProtoMessage() {}
+func (*FieldType) Descriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{4}
+}
+
+func (m *FieldType) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_FieldType.Unmarshal(m, b)
+}
+func (m *FieldType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_FieldType.Marshal(b, m, deterministic)
+}
+func (m *FieldType) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_FieldType.Merge(m, src)
+}
+func (m *FieldType) XXX_Size() int {
+ return xxx_messageInfo_FieldType.Size(m)
+}
+func (m *FieldType) XXX_DiscardUnknown() {
+ xxx_messageInfo_FieldType.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_FieldType proto.InternalMessageInfo
+
+type isFieldType_TypeDecl interface {
+ isFieldType_TypeDecl()
+}
+
+type FieldType_PrimitiveType_ struct {
+ PrimitiveType FieldType_PrimitiveType `protobuf:"varint,1,opt,name=primitive_type,json=primitiveType,proto3,enum=google.cloud.datacatalog.v1.FieldType_PrimitiveType,oneof"`
+}
+
+type FieldType_EnumType_ struct {
+ EnumType *FieldType_EnumType `protobuf:"bytes,2,opt,name=enum_type,json=enumType,proto3,oneof"`
+}
+
+func (*FieldType_PrimitiveType_) isFieldType_TypeDecl() {}
+
+func (*FieldType_EnumType_) isFieldType_TypeDecl() {}
+
+func (m *FieldType) GetTypeDecl() isFieldType_TypeDecl {
+ if m != nil {
+ return m.TypeDecl
+ }
+ return nil
+}
+
+func (m *FieldType) GetPrimitiveType() FieldType_PrimitiveType {
+ if x, ok := m.GetTypeDecl().(*FieldType_PrimitiveType_); ok {
+ return x.PrimitiveType
+ }
+ return FieldType_PRIMITIVE_TYPE_UNSPECIFIED
+}
+
+func (m *FieldType) GetEnumType() *FieldType_EnumType {
+ if x, ok := m.GetTypeDecl().(*FieldType_EnumType_); ok {
+ return x.EnumType
+ }
+ return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*FieldType) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*FieldType_PrimitiveType_)(nil),
+ (*FieldType_EnumType_)(nil),
+ }
+}
+
+type FieldType_EnumType struct {
+ // Required on create; optional on update. The set of allowed values for
+ // this enum. This set must not be empty, the display names of the values in
+ // this set must not be empty and the display names of the values must be
+ // case-insensitively unique within this set. Currently, enum values can
+ // only be added to the list of allowed values. Deletion and renaming of
+ // enum values are not supported. Can have up to 500 allowed values.
+ AllowedValues []*FieldType_EnumType_EnumValue `protobuf:"bytes,1,rep,name=allowed_values,json=allowedValues,proto3" json:"allowed_values,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *FieldType_EnumType) Reset() { *m = FieldType_EnumType{} }
+func (m *FieldType_EnumType) String() string { return proto.CompactTextString(m) }
+func (*FieldType_EnumType) ProtoMessage() {}
+func (*FieldType_EnumType) Descriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{4, 0}
+}
+
+func (m *FieldType_EnumType) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_FieldType_EnumType.Unmarshal(m, b)
+}
+func (m *FieldType_EnumType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_FieldType_EnumType.Marshal(b, m, deterministic)
+}
+func (m *FieldType_EnumType) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_FieldType_EnumType.Merge(m, src)
+}
+func (m *FieldType_EnumType) XXX_Size() int {
+ return xxx_messageInfo_FieldType_EnumType.Size(m)
+}
+func (m *FieldType_EnumType) XXX_DiscardUnknown() {
+ xxx_messageInfo_FieldType_EnumType.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_FieldType_EnumType proto.InternalMessageInfo
+
+func (m *FieldType_EnumType) GetAllowedValues() []*FieldType_EnumType_EnumValue {
+ if m != nil {
+ return m.AllowedValues
+ }
+ return nil
+}
+
+type FieldType_EnumType_EnumValue struct {
+ // Required. The display name of the enum value. Must not be an empty string.
+ DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *FieldType_EnumType_EnumValue) Reset() { *m = FieldType_EnumType_EnumValue{} }
+func (m *FieldType_EnumType_EnumValue) String() string { return proto.CompactTextString(m) }
+func (*FieldType_EnumType_EnumValue) ProtoMessage() {}
+func (*FieldType_EnumType_EnumValue) Descriptor() ([]byte, []int) {
+ return fileDescriptor_90220776be9dd18b, []int{4, 0, 0}
+}
+
+func (m *FieldType_EnumType_EnumValue) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_FieldType_EnumType_EnumValue.Unmarshal(m, b)
+}
+func (m *FieldType_EnumType_EnumValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_FieldType_EnumType_EnumValue.Marshal(b, m, deterministic)
+}
+func (m *FieldType_EnumType_EnumValue) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_FieldType_EnumType_EnumValue.Merge(m, src)
+}
+func (m *FieldType_EnumType_EnumValue) XXX_Size() int {
+ return xxx_messageInfo_FieldType_EnumType_EnumValue.Size(m)
+}
+func (m *FieldType_EnumType_EnumValue) XXX_DiscardUnknown() {
+ xxx_messageInfo_FieldType_EnumType_EnumValue.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_FieldType_EnumType_EnumValue proto.InternalMessageInfo
+
+func (m *FieldType_EnumType_EnumValue) GetDisplayName() string {
+ if m != nil {
+ return m.DisplayName
+ }
+ return ""
+}
+
+func init() {
+ proto.RegisterEnum("google.cloud.datacatalog.v1.FieldType_PrimitiveType", FieldType_PrimitiveType_name, FieldType_PrimitiveType_value)
+ proto.RegisterType((*Tag)(nil), "google.cloud.datacatalog.v1.Tag")
+ proto.RegisterMapType((map[string]*TagField)(nil), "google.cloud.datacatalog.v1.Tag.FieldsEntry")
+ proto.RegisterType((*TagField)(nil), "google.cloud.datacatalog.v1.TagField")
+ proto.RegisterType((*TagField_EnumValue)(nil), "google.cloud.datacatalog.v1.TagField.EnumValue")
+ proto.RegisterType((*TagTemplate)(nil), "google.cloud.datacatalog.v1.TagTemplate")
+ proto.RegisterMapType((map[string]*TagTemplateField)(nil), "google.cloud.datacatalog.v1.TagTemplate.FieldsEntry")
+ proto.RegisterType((*TagTemplateField)(nil), "google.cloud.datacatalog.v1.TagTemplateField")
+ proto.RegisterType((*FieldType)(nil), "google.cloud.datacatalog.v1.FieldType")
+ proto.RegisterType((*FieldType_EnumType)(nil), "google.cloud.datacatalog.v1.FieldType.EnumType")
+ proto.RegisterType((*FieldType_EnumType_EnumValue)(nil), "google.cloud.datacatalog.v1.FieldType.EnumType.EnumValue")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/datacatalog/v1/tags.proto", fileDescriptor_90220776be9dd18b)
+}
+
+var fileDescriptor_90220776be9dd18b = []byte{
+ // 944 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x4d, 0x6f, 0xe3, 0x44,
+ 0x18, 0x8e, 0xe3, 0x24, 0x9b, 0xbc, 0xd9, 0x96, 0x68, 0x00, 0x91, 0x0d, 0xd2, 0xa6, 0x04, 0x51,
+ 0x55, 0x02, 0x6c, 0xed, 0x2e, 0x12, 0xd0, 0x3d, 0xa0, 0xa4, 0x4d, 0x37, 0x91, 0xb6, 0x6d, 0x70,
+ 0xbd, 0x2b, 0x81, 0x40, 0xee, 0xc4, 0x9e, 0xf5, 0x9a, 0xb5, 0x3d, 0xc6, 0x1f, 0x41, 0x51, 0x14,
+ 0xa4, 0x3d, 0x70, 0xe0, 0x67, 0xf0, 0x6b, 0x38, 0xc1, 0x6f, 0xe0, 0xdc, 0x2b, 0x17, 0x8e, 0xc8,
+ 0xf3, 0x91, 0x8f, 0xb6, 0xdb, 0x06, 0x89, 0x53, 0xe6, 0x7d, 0xe7, 0x79, 0x9f, 0x99, 0x79, 0xe6,
+ 0x7d, 0x26, 0x86, 0x5d, 0x97, 0x52, 0xd7, 0x27, 0xba, 0xed, 0xd3, 0xcc, 0xd1, 0x1d, 0x9c, 0x62,
+ 0x1b, 0xa7, 0xd8, 0xa7, 0xae, 0x3e, 0x79, 0xa0, 0xa7, 0xd8, 0x4d, 0xb4, 0x28, 0xa6, 0x29, 0x45,
+ 0xef, 0x73, 0x9c, 0xc6, 0x70, 0xda, 0x0a, 0x4e, 0x9b, 0x3c, 0x68, 0xb5, 0x05, 0x09, 0x8e, 0x3c,
+ 0xfd, 0x85, 0x47, 0x7c, 0xc7, 0x1a, 0x93, 0x97, 0x78, 0xe2, 0xd1, 0x98, 0x57, 0xb7, 0xee, 0xad,
+ 0x00, 0x62, 0x92, 0xd0, 0x2c, 0xb6, 0x89, 0x98, 0x92, 0xb5, 0x2c, 0x1a, 0x67, 0x2f, 0xf4, 0xd4,
+ 0x0b, 0x48, 0x92, 0xe2, 0x20, 0xe2, 0x80, 0xce, 0xef, 0x2a, 0xa8, 0x26, 0x76, 0x11, 0x82, 0x52,
+ 0x88, 0x03, 0xd2, 0x54, 0x76, 0x94, 0xbd, 0x9a, 0xc1, 0xc6, 0xa8, 0x0d, 0xd5, 0x94, 0x04, 0x91,
+ 0x8f, 0x53, 0xd2, 0x2c, 0xe6, 0xf9, 0x9e, 0xfa, 0x57, 0xb7, 0x68, 0x2c, 0x92, 0xe8, 0x73, 0x78,
+ 0x57, 0x8e, 0x2d, 0xc7, 0x4b, 0x22, 0x1f, 0x4f, 0x2d, 0xc6, 0x52, 0x96, 0x68, 0xd5, 0x78, 0x5b,
+ 0x22, 0x0e, 0x39, 0xe0, 0x24, 0x67, 0x6e, 0x42, 0xc5, 0xa6, 0x7e, 0x16, 0x84, 0xcd, 0x52, 0x8e,
+ 0x1c, 0x14, 0x0c, 0x11, 0xa3, 0x21, 0x54, 0xd8, 0x19, 0x93, 0xa6, 0xba, 0xa3, 0xee, 0xd5, 0x1f,
+ 0x7e, 0xa2, 0xdd, 0x20, 0x8d, 0x66, 0x62, 0x57, 0x3b, 0x62, 0xf0, 0x7e, 0x98, 0xc6, 0x53, 0xbe,
+ 0x3f, 0x41, 0xd0, 0x3a, 0x87, 0xfa, 0xca, 0x1c, 0x6a, 0x80, 0xfa, 0x8a, 0x4c, 0xc5, 0x01, 0xf3,
+ 0x21, 0x7a, 0x0c, 0xe5, 0x09, 0xf6, 0x33, 0x7e, 0xb8, 0xfa, 0xc3, 0x8f, 0x6e, 0x5b, 0x8a, 0xb1,
+ 0x19, 0xbc, 0x66, 0xbf, 0xf8, 0x85, 0xb2, 0xff, 0x5a, 0xb9, 0xe8, 0xfe, 0x0c, 0xf7, 0x57, 0x91,
+ 0x9c, 0x02, 0x47, 0x5e, 0xa2, 0xd9, 0x34, 0xd0, 0x73, 0x69, 0xbf, 0x8b, 0x62, 0xfa, 0x03, 0xb1,
+ 0xd3, 0x44, 0x9f, 0x89, 0xd1, 0x5c, 0xf7, 0xa9, 0x8d, 0x53, 0x8f, 0x86, 0x89, 0x3e, 0x93, 0xc3,
+ 0xb9, 0x4e, 0xf2, 0x7d, 0x3e, 0x89, 0x69, 0x16, 0x25, 0xfa, 0x8c, 0x05, 0x96, 0x9b, 0x47, 0x7c,
+ 0xc6, 0x23, 0x32, 0x3b, 0x67, 0xad, 0xa3, 0xcf, 0x52, 0xec, 0xce, 0x7b, 0x77, 0xa0, 0x9c, 0xd8,
+ 0x34, 0x22, 0x9d, 0x5f, 0x55, 0xa8, 0xca, 0x4d, 0xa2, 0x5d, 0xb8, 0xbb, 0x76, 0x21, 0xca, 0xf2,
+ 0x42, 0xea, 0xce, 0xca, 0x45, 0x7c, 0x08, 0x77, 0x1d, 0x9a, 0x8d, 0x7d, 0x62, 0x2d, 0x95, 0x50,
+ 0x06, 0x05, 0xa3, 0xce, 0xb3, 0xcf, 0xf3, 0x64, 0x0e, 0x4a, 0xd2, 0xd8, 0x0b, 0x5d, 0x01, 0x52,
+ 0xc5, 0x9d, 0xd5, 0x79, 0x96, 0x83, 0xda, 0x00, 0x63, 0x4a, 0x7d, 0x01, 0xc9, 0xaf, 0xb5, 0x3a,
+ 0x28, 0x18, 0xb5, 0x3c, 0xc7, 0x01, 0x7d, 0x78, 0x6b, 0xd1, 0x7c, 0x02, 0x55, 0x66, 0xba, 0xb7,
+ 0xa4, 0xee, 0xb2, 0x49, 0x35, 0x53, 0xe2, 0x06, 0x05, 0x63, 0x7b, 0x51, 0xc4, 0x69, 0x46, 0x00,
+ 0x24, 0xcc, 0x02, 0xc1, 0x50, 0x61, 0x0c, 0xfa, 0x46, 0x37, 0xa7, 0xf5, 0xc3, 0x2c, 0x60, 0x24,
+ 0xf9, 0xc6, 0x88, 0x0c, 0xd0, 0x3d, 0x28, 0xd3, 0xd8, 0x21, 0x71, 0xf3, 0xce, 0x8e, 0xb2, 0x57,
+ 0xe6, 0x22, 0xf1, 0x4c, 0x4b, 0x83, 0xda, 0xa2, 0x08, 0x7d, 0x70, 0x9d, 0xa6, 0x6b, 0x72, 0xf6,
+ 0x2a, 0x50, 0x7a, 0xe5, 0x85, 0x4e, 0xe7, 0xef, 0x22, 0xd4, 0x4d, 0xec, 0x9a, 0xd2, 0x28, 0xd7,
+ 0xb9, 0xeb, 0x32, 0x5d, 0xf1, 0x0a, 0x1d, 0xfa, 0xfa, 0x92, 0x19, 0x3e, 0xbb, 0xed, 0x9c, 0x72,
+ 0xc1, 0x37, 0x9b, 0xe2, 0xe5, 0x6d, 0xa6, 0x38, 0x58, 0x37, 0xc5, 0xa7, 0x9b, 0x2e, 0x79, 0xc5,
+ 0x1c, 0xd1, 0x45, 0x37, 0x80, 0xdd, 0x9b, 0xbd, 0xb1, 0x10, 0xe8, 0x60, 0x53, 0x8f, 0xa4, 0xcb,
+ 0x22, 0xee, 0x00, 0x4b, 0xbe, 0x2f, 0xf3, 0xce, 0x9f, 0x45, 0x68, 0x5c, 0xde, 0x11, 0x7a, 0x4f,
+ 0x48, 0x5f, 0x59, 0x3a, 0xe0, 0x7a, 0xfd, 0xaf, 0x5e, 0x27, 0xfa, 0x0a, 0x4a, 0xe9, 0x34, 0x92,
+ 0x52, 0xec, 0xde, 0x28, 0x05, 0x5b, 0xcd, 0x9c, 0x46, 0x84, 0xeb, 0xcd, 0x0a, 0x51, 0x1b, 0xea,
+ 0x5e, 0x62, 0xc5, 0xe4, 0xc7, 0xcc, 0x8b, 0x89, 0xc3, 0x8c, 0x53, 0x35, 0xc0, 0x4b, 0x0c, 0x91,
+ 0x41, 0xef, 0xc8, 0xde, 0xcb, 0xad, 0x50, 0x16, 0x6d, 0xb7, 0xff, 0x8b, 0x72, 0xd1, 0x7d, 0xad,
+ 0xc0, 0xc7, 0x9b, 0x89, 0xc7, 0xcf, 0x69, 0xfc, 0x0f, 0x0a, 0xf2, 0xbf, 0x97, 0x44, 0x9f, 0xb1,
+ 0xdf, 0x79, 0xe7, 0x0f, 0x15, 0x6a, 0x8b, 0x73, 0xa1, 0xef, 0x61, 0x3b, 0x8a, 0xbd, 0xc0, 0x4b,
+ 0xbd, 0x09, 0xb1, 0x98, 0x2e, 0xb9, 0x64, 0xdb, 0xb7, 0x74, 0xe5, 0xa2, 0x5e, 0x1b, 0xc9, 0xe2,
+ 0x3c, 0x1a, 0x14, 0x8c, 0xad, 0x68, 0x35, 0x81, 0x4e, 0x80, 0x79, 0xd2, 0x5a, 0x51, 0x5c, 0xdf,
+ 0x90, 0x39, 0xf7, 0xa8, 0x20, 0xad, 0x12, 0x31, 0x6e, 0xfd, 0xa6, 0x40, 0x55, 0x4e, 0xa0, 0x73,
+ 0xd8, 0xc6, 0xbe, 0x4f, 0x7f, 0x22, 0x0e, 0x7f, 0x38, 0x92, 0xa6, 0xc2, 0x1c, 0xf5, 0xe5, 0x7f,
+ 0x5c, 0x61, 0xf9, 0x86, 0x18, 0x5b, 0x82, 0x90, 0x45, 0x49, 0xeb, 0xd1, 0xea, 0x53, 0xf1, 0xc6,
+ 0xe7, 0xb7, 0xb8, 0xd6, 0x60, 0x9d, 0x73, 0xd8, 0x5a, 0x53, 0x05, 0xdd, 0x87, 0xd6, 0xc8, 0x18,
+ 0x1e, 0x0f, 0xcd, 0xe1, 0xf3, 0xbe, 0x65, 0x7e, 0x33, 0xea, 0x5b, 0xcf, 0x4e, 0xce, 0x46, 0xfd,
+ 0x83, 0xe1, 0xd1, 0xb0, 0x7f, 0xd8, 0x28, 0x20, 0x80, 0xca, 0xe1, 0xe9, 0xb3, 0xde, 0xd3, 0x7e,
+ 0x43, 0xc9, 0xc7, 0x67, 0xa6, 0x31, 0x3c, 0x79, 0xd2, 0x28, 0xa2, 0x2a, 0x94, 0x7a, 0xa7, 0xa7,
+ 0x4f, 0x1b, 0x2a, 0xda, 0x82, 0x9a, 0x39, 0x3c, 0xee, 0x9f, 0x99, 0xdd, 0xe3, 0x51, 0xa3, 0xd4,
+ 0xab, 0x43, 0x2d, 0x17, 0xd4, 0x72, 0x88, 0xed, 0xf7, 0x42, 0x68, 0xdb, 0x34, 0xb8, 0xe9, 0xc8,
+ 0x23, 0xe5, 0xdb, 0x23, 0x31, 0xed, 0x52, 0x1f, 0x87, 0xae, 0x46, 0x63, 0x57, 0x77, 0x49, 0xc8,
+ 0xde, 0x66, 0x7d, 0xd9, 0x84, 0xd7, 0x7e, 0xd2, 0x3c, 0x5e, 0x09, 0xff, 0x51, 0x94, 0x71, 0x85,
+ 0x55, 0x3d, 0xfa, 0x37, 0x00, 0x00, 0xff, 0xff, 0x5f, 0xb5, 0xc4, 0xb8, 0x07, 0x09, 0x00, 0x00,
+}
diff --git a/googleapis/cloud/datacatalog/v1/timestamps.pb.go b/googleapis/cloud/datacatalog/v1/timestamps.pb.go
new file mode 100644
index 0000000000..2b631c85bc
--- /dev/null
+++ b/googleapis/cloud/datacatalog/v1/timestamps.pb.go
@@ -0,0 +1,112 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/datacatalog/v1/timestamps.proto
+
+package datacatalog
+
+import (
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ timestamp "github.com/golang/protobuf/ptypes/timestamp"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// Timestamps about this resource according to a particular system.
+type SystemTimestamps struct {
+ // The creation time of the resource within the given system.
+ CreateTime *timestamp.Timestamp `protobuf:"bytes,1,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // The last-modified time of the resource within the given system.
+ UpdateTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // Output only. The expiration time of the resource within the given system.
+ // Currently only apllicable to BigQuery resources.
+ ExpireTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=expire_time,json=expireTime,proto3" json:"expire_time,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *SystemTimestamps) Reset() { *m = SystemTimestamps{} }
+func (m *SystemTimestamps) String() string { return proto.CompactTextString(m) }
+func (*SystemTimestamps) ProtoMessage() {}
+func (*SystemTimestamps) Descriptor() ([]byte, []int) {
+ return fileDescriptor_860763b870627e09, []int{0}
+}
+
+func (m *SystemTimestamps) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_SystemTimestamps.Unmarshal(m, b)
+}
+func (m *SystemTimestamps) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_SystemTimestamps.Marshal(b, m, deterministic)
+}
+func (m *SystemTimestamps) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_SystemTimestamps.Merge(m, src)
+}
+func (m *SystemTimestamps) XXX_Size() int {
+ return xxx_messageInfo_SystemTimestamps.Size(m)
+}
+func (m *SystemTimestamps) XXX_DiscardUnknown() {
+ xxx_messageInfo_SystemTimestamps.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SystemTimestamps proto.InternalMessageInfo
+
+func (m *SystemTimestamps) GetCreateTime() *timestamp.Timestamp {
+ if m != nil {
+ return m.CreateTime
+ }
+ return nil
+}
+
+func (m *SystemTimestamps) GetUpdateTime() *timestamp.Timestamp {
+ if m != nil {
+ return m.UpdateTime
+ }
+ return nil
+}
+
+func (m *SystemTimestamps) GetExpireTime() *timestamp.Timestamp {
+ if m != nil {
+ return m.ExpireTime
+ }
+ return nil
+}
+
+func init() {
+ proto.RegisterType((*SystemTimestamps)(nil), "google.cloud.datacatalog.v1.SystemTimestamps")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/datacatalog/v1/timestamps.proto", fileDescriptor_860763b870627e09)
+}
+
+var fileDescriptor_860763b870627e09 = []byte{
+ // 254 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x91, 0xb1, 0x4e, 0xc3, 0x30,
+ 0x10, 0x86, 0x65, 0x22, 0x31, 0x38, 0x0b, 0xea, 0x84, 0xca, 0x50, 0xc4, 0xc4, 0x80, 0xce, 0x2a,
+ 0x8c, 0x5d, 0xa0, 0x03, 0x33, 0x2a, 0x4c, 0x2c, 0xd5, 0x25, 0xb9, 0x1a, 0x4b, 0x4e, 0xce, 0x72,
+ 0x9c, 0x08, 0x5e, 0x92, 0x67, 0xe0, 0x31, 0x18, 0x51, 0xec, 0x10, 0x3a, 0xa0, 0x76, 0xbc, 0xfb,
+ 0xbf, 0xef, 0xb7, 0x65, 0xcb, 0x1b, 0xcd, 0xac, 0x2d, 0xa9, 0xd2, 0x72, 0x57, 0xa9, 0x0a, 0x03,
+ 0x96, 0x18, 0xd0, 0xb2, 0x56, 0xfd, 0x52, 0x05, 0x53, 0x53, 0x1b, 0xb0, 0x76, 0x2d, 0x38, 0xcf,
+ 0x81, 0x67, 0x17, 0x89, 0x86, 0x48, 0xc3, 0x1e, 0x0d, 0xfd, 0x72, 0xbe, 0x18, 0xab, 0xd0, 0x19,
+ 0xb5, 0x33, 0x64, 0xab, 0x6d, 0x41, 0x6f, 0xd8, 0x1b, 0xf6, 0xc9, 0x9e, 0x80, 0x38, 0x15, 0xdd,
+ 0xee, 0xaf, 0x3f, 0x01, 0x57, 0x9f, 0x42, 0x9e, 0x3d, 0x7f, 0xb4, 0x81, 0xea, 0x97, 0xe9, 0xe4,
+ 0xd9, 0x4a, 0xe6, 0xa5, 0x27, 0x0c, 0xb4, 0x1d, 0xf0, 0x73, 0x71, 0x29, 0xae, 0xf3, 0xdb, 0x39,
+ 0x8c, 0x37, 0xf9, 0xed, 0x82, 0xc9, 0xd8, 0xc8, 0x84, 0x0f, 0x8b, 0x41, 0xee, 0x5c, 0x35, 0xc9,
+ 0x27, 0xc7, 0xe5, 0x84, 0x47, 0xf9, 0x5e, 0xe6, 0xf4, 0xee, 0x8c, 0x1f, 0xe5, 0xec, 0x98, 0xbc,
+ 0xce, 0xbe, 0x1e, 0xb2, 0x8d, 0x4c, 0xce, 0xb0, 0x5d, 0x37, 0x72, 0x51, 0x72, 0x0d, 0x07, 0x5e,
+ 0xed, 0x49, 0xbc, 0x3e, 0x8e, 0xb1, 0x66, 0x8b, 0x8d, 0x06, 0xf6, 0x5a, 0x69, 0x6a, 0x62, 0xbd,
+ 0x4a, 0x11, 0x3a, 0xd3, 0xfe, 0xfb, 0x43, 0xab, 0xbd, 0xf1, 0x5b, 0x88, 0xe2, 0x34, 0x5a, 0x77,
+ 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x98, 0x26, 0x40, 0xd0, 0xd6, 0x01, 0x00, 0x00,
+}
diff --git a/googleapis/cloud/mediatranslation/v1beta1/media_translation.pb.go b/googleapis/cloud/mediatranslation/v1beta1/media_translation.pb.go
new file mode 100644
index 0000000000..6598595674
--- /dev/null
+++ b/googleapis/cloud/mediatranslation/v1beta1/media_translation.pb.go
@@ -0,0 +1,729 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/mediatranslation/v1beta1/media_translation.proto
+
+package mediatranslation
+
+import (
+ context "context"
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ status "google.golang.org/genproto/googleapis/rpc/status"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status1 "google.golang.org/grpc/status"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// Indicates the type of speech event.
+type StreamingTranslateSpeechResponse_SpeechEventType int32
+
+const (
+ // No speech event specified.
+ StreamingTranslateSpeechResponse_SPEECH_EVENT_TYPE_UNSPECIFIED StreamingTranslateSpeechResponse_SpeechEventType = 0
+ // This event indicates that the server has detected the end of the user's
+ // speech utterance and expects no additional speech. Therefore, the server
+ // will not process additional audio (although it may subsequently return
+ // additional results). When the client receives 'END_OF_SINGLE_UTTERANCE'
+ // event, the client should stop sending the requests. However, clients
+ // should keep receiving remaining responses until the stream is terminated.
+ // To construct the complete sentence in a streaming way, one should
+ // override (if 'is_final' of previous response is false), or append (if
+ // 'is_final' of previous response is true). This event is only sent if
+ // `single_utterance` was set to `true`, and is not used otherwise.
+ StreamingTranslateSpeechResponse_END_OF_SINGLE_UTTERANCE StreamingTranslateSpeechResponse_SpeechEventType = 1
+)
+
+var StreamingTranslateSpeechResponse_SpeechEventType_name = map[int32]string{
+ 0: "SPEECH_EVENT_TYPE_UNSPECIFIED",
+ 1: "END_OF_SINGLE_UTTERANCE",
+}
+
+var StreamingTranslateSpeechResponse_SpeechEventType_value = map[string]int32{
+ "SPEECH_EVENT_TYPE_UNSPECIFIED": 0,
+ "END_OF_SINGLE_UTTERANCE": 1,
+}
+
+func (x StreamingTranslateSpeechResponse_SpeechEventType) String() string {
+ return proto.EnumName(StreamingTranslateSpeechResponse_SpeechEventType_name, int32(x))
+}
+
+func (StreamingTranslateSpeechResponse_SpeechEventType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_7b2f67d966c0ba6c, []int{4, 0}
+}
+
+// Provides information to the speech translation that specifies how to process
+// the request.
+type TranslateSpeechConfig struct {
+ // Required. Encoding of audio data.
+ // Supported formats:
+ //
+ // - `linear16`
+ //
+ // Uncompressed 16-bit signed little-endian samples (Linear PCM).
+ //
+ //
+ AudioEncoding string `protobuf:"bytes,1,opt,name=audio_encoding,json=audioEncoding,proto3" json:"audio_encoding,omitempty"`
+ // Required. Source language code (BCP-47) of the input audio.
+ SourceLanguageCode string `protobuf:"bytes,2,opt,name=source_language_code,json=sourceLanguageCode,proto3" json:"source_language_code,omitempty"`
+ // Optional. A list of up to 3 additional language codes (BCP-47), listing possible
+ // alternative languages of the supplied audio. If alternative source
+ // languages are listed, speech translation result will translate in the most
+ // likely language detected including the main source_language_code. The
+ // translated result will include the language code of the language detected
+ // in the audio.
+ AlternativeSourceLanguageCodes []string `protobuf:"bytes,6,rep,name=alternative_source_language_codes,json=alternativeSourceLanguageCodes,proto3" json:"alternative_source_language_codes,omitempty"`
+ // Required. Target language code (BCP-47) of the output.
+ TargetLanguageCode string `protobuf:"bytes,3,opt,name=target_language_code,json=targetLanguageCode,proto3" json:"target_language_code,omitempty"`
+ // Optional. Sample rate in Hertz of the audio data. Valid values are:
+ // 8000-48000. 16000 is optimal. For best results, set the sampling rate of
+ // the audio source to 16000 Hz. If that's not possible, use the native sample
+ // rate of the audio source (instead of re-sampling). This field can only be
+ // omitted for `FLAC` and `WAV` audio files.
+ SampleRateHertz int32 `protobuf:"varint,4,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"`
+ // Optional.
+ Model string `protobuf:"bytes,5,opt,name=model,proto3" json:"model,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TranslateSpeechConfig) Reset() { *m = TranslateSpeechConfig{} }
+func (m *TranslateSpeechConfig) String() string { return proto.CompactTextString(m) }
+func (*TranslateSpeechConfig) ProtoMessage() {}
+func (*TranslateSpeechConfig) Descriptor() ([]byte, []int) {
+ return fileDescriptor_7b2f67d966c0ba6c, []int{0}
+}
+
+func (m *TranslateSpeechConfig) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TranslateSpeechConfig.Unmarshal(m, b)
+}
+func (m *TranslateSpeechConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TranslateSpeechConfig.Marshal(b, m, deterministic)
+}
+func (m *TranslateSpeechConfig) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TranslateSpeechConfig.Merge(m, src)
+}
+func (m *TranslateSpeechConfig) XXX_Size() int {
+ return xxx_messageInfo_TranslateSpeechConfig.Size(m)
+}
+func (m *TranslateSpeechConfig) XXX_DiscardUnknown() {
+ xxx_messageInfo_TranslateSpeechConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TranslateSpeechConfig proto.InternalMessageInfo
+
+func (m *TranslateSpeechConfig) GetAudioEncoding() string {
+ if m != nil {
+ return m.AudioEncoding
+ }
+ return ""
+}
+
+func (m *TranslateSpeechConfig) GetSourceLanguageCode() string {
+ if m != nil {
+ return m.SourceLanguageCode
+ }
+ return ""
+}
+
+func (m *TranslateSpeechConfig) GetAlternativeSourceLanguageCodes() []string {
+ if m != nil {
+ return m.AlternativeSourceLanguageCodes
+ }
+ return nil
+}
+
+func (m *TranslateSpeechConfig) GetTargetLanguageCode() string {
+ if m != nil {
+ return m.TargetLanguageCode
+ }
+ return ""
+}
+
+func (m *TranslateSpeechConfig) GetSampleRateHertz() int32 {
+ if m != nil {
+ return m.SampleRateHertz
+ }
+ return 0
+}
+
+func (m *TranslateSpeechConfig) GetModel() string {
+ if m != nil {
+ return m.Model
+ }
+ return ""
+}
+
+// Config used for streaming translation.
+type StreamingTranslateSpeechConfig struct {
+ // Required. The common config for all the following audio contents.
+ AudioConfig *TranslateSpeechConfig `protobuf:"bytes,1,opt,name=audio_config,json=audioConfig,proto3" json:"audio_config,omitempty"`
+ // Optional. If `false` or omitted, the system performs
+ // continuous translation (continuing to wait for and process audio even if
+ // the user pauses speaking) until the client closes the input stream (gRPC
+ // API) or until the maximum time limit has been reached. May return multiple
+ // `StreamingTranslateSpeechResult`s with the `is_final` flag set to `true`.
+ //
+ // If `true`, the speech translator will detect a single spoken utterance.
+ // When it detects that the user has paused or stopped speaking, it will
+ // return an `END_OF_SINGLE_UTTERANCE` event and cease translation.
+ // When the client receives 'END_OF_SINGLE_UTTERANCE' event, the client should
+ // stop sending the requests. However, clients should keep receiving remaining
+ // responses until the stream is terminated. To construct the complete
+ // sentence in a streaming way, one should override (if 'is_final' of previous
+ // response is false), or append (if 'is_final' of previous response is true).
+ SingleUtterance bool `protobuf:"varint,2,opt,name=single_utterance,json=singleUtterance,proto3" json:"single_utterance,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *StreamingTranslateSpeechConfig) Reset() { *m = StreamingTranslateSpeechConfig{} }
+func (m *StreamingTranslateSpeechConfig) String() string { return proto.CompactTextString(m) }
+func (*StreamingTranslateSpeechConfig) ProtoMessage() {}
+func (*StreamingTranslateSpeechConfig) Descriptor() ([]byte, []int) {
+ return fileDescriptor_7b2f67d966c0ba6c, []int{1}
+}
+
+func (m *StreamingTranslateSpeechConfig) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_StreamingTranslateSpeechConfig.Unmarshal(m, b)
+}
+func (m *StreamingTranslateSpeechConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_StreamingTranslateSpeechConfig.Marshal(b, m, deterministic)
+}
+func (m *StreamingTranslateSpeechConfig) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_StreamingTranslateSpeechConfig.Merge(m, src)
+}
+func (m *StreamingTranslateSpeechConfig) XXX_Size() int {
+ return xxx_messageInfo_StreamingTranslateSpeechConfig.Size(m)
+}
+func (m *StreamingTranslateSpeechConfig) XXX_DiscardUnknown() {
+ xxx_messageInfo_StreamingTranslateSpeechConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_StreamingTranslateSpeechConfig proto.InternalMessageInfo
+
+func (m *StreamingTranslateSpeechConfig) GetAudioConfig() *TranslateSpeechConfig {
+ if m != nil {
+ return m.AudioConfig
+ }
+ return nil
+}
+
+func (m *StreamingTranslateSpeechConfig) GetSingleUtterance() bool {
+ if m != nil {
+ return m.SingleUtterance
+ }
+ return false
+}
+
+// The top-level message sent by the client for the `StreamingTranslateSpeech`
+// method. Multiple `StreamingTranslateSpeechRequest` messages are sent. The
+// first message must contain a `streaming_config` message and must not contain
+// `audio_content` data. All subsequent messages must contain `audio_content`
+// data and must not contain a `streaming_config` message.
+type StreamingTranslateSpeechRequest struct {
+ // The streaming request, which is either a streaming config or content.
+ //
+ // Types that are valid to be assigned to StreamingRequest:
+ // *StreamingTranslateSpeechRequest_StreamingConfig
+ // *StreamingTranslateSpeechRequest_AudioContent
+ StreamingRequest isStreamingTranslateSpeechRequest_StreamingRequest `protobuf_oneof:"streaming_request"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *StreamingTranslateSpeechRequest) Reset() { *m = StreamingTranslateSpeechRequest{} }
+func (m *StreamingTranslateSpeechRequest) String() string { return proto.CompactTextString(m) }
+func (*StreamingTranslateSpeechRequest) ProtoMessage() {}
+func (*StreamingTranslateSpeechRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_7b2f67d966c0ba6c, []int{2}
+}
+
+func (m *StreamingTranslateSpeechRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_StreamingTranslateSpeechRequest.Unmarshal(m, b)
+}
+func (m *StreamingTranslateSpeechRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_StreamingTranslateSpeechRequest.Marshal(b, m, deterministic)
+}
+func (m *StreamingTranslateSpeechRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_StreamingTranslateSpeechRequest.Merge(m, src)
+}
+func (m *StreamingTranslateSpeechRequest) XXX_Size() int {
+ return xxx_messageInfo_StreamingTranslateSpeechRequest.Size(m)
+}
+func (m *StreamingTranslateSpeechRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_StreamingTranslateSpeechRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_StreamingTranslateSpeechRequest proto.InternalMessageInfo
+
+type isStreamingTranslateSpeechRequest_StreamingRequest interface {
+ isStreamingTranslateSpeechRequest_StreamingRequest()
+}
+
+type StreamingTranslateSpeechRequest_StreamingConfig struct {
+ StreamingConfig *StreamingTranslateSpeechConfig `protobuf:"bytes,1,opt,name=streaming_config,json=streamingConfig,proto3,oneof"`
+}
+
+type StreamingTranslateSpeechRequest_AudioContent struct {
+ AudioContent []byte `protobuf:"bytes,2,opt,name=audio_content,json=audioContent,proto3,oneof"`
+}
+
+func (*StreamingTranslateSpeechRequest_StreamingConfig) isStreamingTranslateSpeechRequest_StreamingRequest() {
+}
+
+func (*StreamingTranslateSpeechRequest_AudioContent) isStreamingTranslateSpeechRequest_StreamingRequest() {
+}
+
+func (m *StreamingTranslateSpeechRequest) GetStreamingRequest() isStreamingTranslateSpeechRequest_StreamingRequest {
+ if m != nil {
+ return m.StreamingRequest
+ }
+ return nil
+}
+
+func (m *StreamingTranslateSpeechRequest) GetStreamingConfig() *StreamingTranslateSpeechConfig {
+ if x, ok := m.GetStreamingRequest().(*StreamingTranslateSpeechRequest_StreamingConfig); ok {
+ return x.StreamingConfig
+ }
+ return nil
+}
+
+func (m *StreamingTranslateSpeechRequest) GetAudioContent() []byte {
+ if x, ok := m.GetStreamingRequest().(*StreamingTranslateSpeechRequest_AudioContent); ok {
+ return x.AudioContent
+ }
+ return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*StreamingTranslateSpeechRequest) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*StreamingTranslateSpeechRequest_StreamingConfig)(nil),
+ (*StreamingTranslateSpeechRequest_AudioContent)(nil),
+ }
+}
+
+// A streaming speech translation result corresponding to a portion of the audio
+// that is currently being processed.
+type StreamingTranslateSpeechResult struct {
+ // Translation result.
+ //
+ // Use oneof field to reserve for future tts result.
+ //
+ // Types that are valid to be assigned to Result:
+ // *StreamingTranslateSpeechResult_TextTranslationResult_
+ Result isStreamingTranslateSpeechResult_Result `protobuf_oneof:"result"`
+ // Output only. The debug only recognition result in original language. This field is debug
+ // only and will be set to empty string if not available.
+ // This is implementation detail and will not be backward compatible.
+ //
+ // Still need to decide whether to expose this field by default.
+ RecognitionResult string `protobuf:"bytes,3,opt,name=recognition_result,json=recognitionResult,proto3" json:"recognition_result,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *StreamingTranslateSpeechResult) Reset() { *m = StreamingTranslateSpeechResult{} }
+func (m *StreamingTranslateSpeechResult) String() string { return proto.CompactTextString(m) }
+func (*StreamingTranslateSpeechResult) ProtoMessage() {}
+func (*StreamingTranslateSpeechResult) Descriptor() ([]byte, []int) {
+ return fileDescriptor_7b2f67d966c0ba6c, []int{3}
+}
+
+func (m *StreamingTranslateSpeechResult) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_StreamingTranslateSpeechResult.Unmarshal(m, b)
+}
+func (m *StreamingTranslateSpeechResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_StreamingTranslateSpeechResult.Marshal(b, m, deterministic)
+}
+func (m *StreamingTranslateSpeechResult) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_StreamingTranslateSpeechResult.Merge(m, src)
+}
+func (m *StreamingTranslateSpeechResult) XXX_Size() int {
+ return xxx_messageInfo_StreamingTranslateSpeechResult.Size(m)
+}
+func (m *StreamingTranslateSpeechResult) XXX_DiscardUnknown() {
+ xxx_messageInfo_StreamingTranslateSpeechResult.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_StreamingTranslateSpeechResult proto.InternalMessageInfo
+
+type isStreamingTranslateSpeechResult_Result interface {
+ isStreamingTranslateSpeechResult_Result()
+}
+
+type StreamingTranslateSpeechResult_TextTranslationResult_ struct {
+ TextTranslationResult *StreamingTranslateSpeechResult_TextTranslationResult `protobuf:"bytes,1,opt,name=text_translation_result,json=textTranslationResult,proto3,oneof"`
+}
+
+func (*StreamingTranslateSpeechResult_TextTranslationResult_) isStreamingTranslateSpeechResult_Result() {
+}
+
+func (m *StreamingTranslateSpeechResult) GetResult() isStreamingTranslateSpeechResult_Result {
+ if m != nil {
+ return m.Result
+ }
+ return nil
+}
+
+func (m *StreamingTranslateSpeechResult) GetTextTranslationResult() *StreamingTranslateSpeechResult_TextTranslationResult {
+ if x, ok := m.GetResult().(*StreamingTranslateSpeechResult_TextTranslationResult_); ok {
+ return x.TextTranslationResult
+ }
+ return nil
+}
+
+func (m *StreamingTranslateSpeechResult) GetRecognitionResult() string {
+ if m != nil {
+ return m.RecognitionResult
+ }
+ return ""
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*StreamingTranslateSpeechResult) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*StreamingTranslateSpeechResult_TextTranslationResult_)(nil),
+ }
+}
+
+// Text translation result.
+type StreamingTranslateSpeechResult_TextTranslationResult struct {
+ // Output only. The translated sentence.
+ Translation string `protobuf:"bytes,1,opt,name=translation,proto3" json:"translation,omitempty"`
+ // Output only. If `false`, this `StreamingTranslateSpeechResult` represents
+ // an interim result that may change. If `true`, this is the final time the
+ // translation service will return this particular
+ // `StreamingTranslateSpeechResult`, the streaming translator will not
+ // return any further hypotheses for this portion of the transcript and
+ // corresponding audio.
+ IsFinal bool `protobuf:"varint,2,opt,name=is_final,json=isFinal,proto3" json:"is_final,omitempty"`
+ // Output only. The source language code (BCP-47) detected in the audio. Speech
+ // translation result will translate in the most likely language detected
+ // including the alternative source languages and main source_language_code.
+ DetectedSourceLanguageCode string `protobuf:"bytes,3,opt,name=detected_source_language_code,json=detectedSourceLanguageCode,proto3" json:"detected_source_language_code,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) Reset() {
+ *m = StreamingTranslateSpeechResult_TextTranslationResult{}
+}
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) String() string {
+ return proto.CompactTextString(m)
+}
+func (*StreamingTranslateSpeechResult_TextTranslationResult) ProtoMessage() {}
+func (*StreamingTranslateSpeechResult_TextTranslationResult) Descriptor() ([]byte, []int) {
+ return fileDescriptor_7b2f67d966c0ba6c, []int{3, 0}
+}
+
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_StreamingTranslateSpeechResult_TextTranslationResult.Unmarshal(m, b)
+}
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_StreamingTranslateSpeechResult_TextTranslationResult.Marshal(b, m, deterministic)
+}
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_StreamingTranslateSpeechResult_TextTranslationResult.Merge(m, src)
+}
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) XXX_Size() int {
+ return xxx_messageInfo_StreamingTranslateSpeechResult_TextTranslationResult.Size(m)
+}
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) XXX_DiscardUnknown() {
+ xxx_messageInfo_StreamingTranslateSpeechResult_TextTranslationResult.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_StreamingTranslateSpeechResult_TextTranslationResult proto.InternalMessageInfo
+
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) GetTranslation() string {
+ if m != nil {
+ return m.Translation
+ }
+ return ""
+}
+
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) GetIsFinal() bool {
+ if m != nil {
+ return m.IsFinal
+ }
+ return false
+}
+
+func (m *StreamingTranslateSpeechResult_TextTranslationResult) GetDetectedSourceLanguageCode() string {
+ if m != nil {
+ return m.DetectedSourceLanguageCode
+ }
+ return ""
+}
+
+// A streaming speech translation response corresponding to a portion of
+// the audio currently processed.
+type StreamingTranslateSpeechResponse struct {
+ // Output only. If set, returns a [google.rpc.Status][google.rpc.Status] message that
+ // specifies the error for the operation.
+ Error *status.Status `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
+ // Output only. The translation result that is currently being processed (is_final could be
+ // true or false).
+ Result *StreamingTranslateSpeechResult `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"`
+ // Output only. Indicates the type of speech event.
+ SpeechEventType StreamingTranslateSpeechResponse_SpeechEventType `protobuf:"varint,3,opt,name=speech_event_type,json=speechEventType,proto3,enum=google.cloud.mediatranslation.v1beta1.StreamingTranslateSpeechResponse_SpeechEventType" json:"speech_event_type,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *StreamingTranslateSpeechResponse) Reset() { *m = StreamingTranslateSpeechResponse{} }
+func (m *StreamingTranslateSpeechResponse) String() string { return proto.CompactTextString(m) }
+func (*StreamingTranslateSpeechResponse) ProtoMessage() {}
+func (*StreamingTranslateSpeechResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_7b2f67d966c0ba6c, []int{4}
+}
+
+func (m *StreamingTranslateSpeechResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_StreamingTranslateSpeechResponse.Unmarshal(m, b)
+}
+func (m *StreamingTranslateSpeechResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_StreamingTranslateSpeechResponse.Marshal(b, m, deterministic)
+}
+func (m *StreamingTranslateSpeechResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_StreamingTranslateSpeechResponse.Merge(m, src)
+}
+func (m *StreamingTranslateSpeechResponse) XXX_Size() int {
+ return xxx_messageInfo_StreamingTranslateSpeechResponse.Size(m)
+}
+func (m *StreamingTranslateSpeechResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_StreamingTranslateSpeechResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_StreamingTranslateSpeechResponse proto.InternalMessageInfo
+
+func (m *StreamingTranslateSpeechResponse) GetError() *status.Status {
+ if m != nil {
+ return m.Error
+ }
+ return nil
+}
+
+func (m *StreamingTranslateSpeechResponse) GetResult() *StreamingTranslateSpeechResult {
+ if m != nil {
+ return m.Result
+ }
+ return nil
+}
+
+func (m *StreamingTranslateSpeechResponse) GetSpeechEventType() StreamingTranslateSpeechResponse_SpeechEventType {
+ if m != nil {
+ return m.SpeechEventType
+ }
+ return StreamingTranslateSpeechResponse_SPEECH_EVENT_TYPE_UNSPECIFIED
+}
+
+func init() {
+ proto.RegisterEnum("google.cloud.mediatranslation.v1beta1.StreamingTranslateSpeechResponse_SpeechEventType", StreamingTranslateSpeechResponse_SpeechEventType_name, StreamingTranslateSpeechResponse_SpeechEventType_value)
+ proto.RegisterType((*TranslateSpeechConfig)(nil), "google.cloud.mediatranslation.v1beta1.TranslateSpeechConfig")
+ proto.RegisterType((*StreamingTranslateSpeechConfig)(nil), "google.cloud.mediatranslation.v1beta1.StreamingTranslateSpeechConfig")
+ proto.RegisterType((*StreamingTranslateSpeechRequest)(nil), "google.cloud.mediatranslation.v1beta1.StreamingTranslateSpeechRequest")
+ proto.RegisterType((*StreamingTranslateSpeechResult)(nil), "google.cloud.mediatranslation.v1beta1.StreamingTranslateSpeechResult")
+ proto.RegisterType((*StreamingTranslateSpeechResult_TextTranslationResult)(nil), "google.cloud.mediatranslation.v1beta1.StreamingTranslateSpeechResult.TextTranslationResult")
+ proto.RegisterType((*StreamingTranslateSpeechResponse)(nil), "google.cloud.mediatranslation.v1beta1.StreamingTranslateSpeechResponse")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/mediatranslation/v1beta1/media_translation.proto", fileDescriptor_7b2f67d966c0ba6c)
+}
+
+var fileDescriptor_7b2f67d966c0ba6c = []byte{
+ // 917 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x41, 0x6f, 0xe3, 0x44,
+ 0x1b, 0x8e, 0x93, 0xaf, 0xfd, 0xca, 0xb4, 0xbb, 0x6d, 0x07, 0xaa, 0x86, 0xa0, 0x6d, 0xbb, 0x91,
+ 0x2a, 0x15, 0xa4, 0xb5, 0x69, 0x11, 0x97, 0x00, 0x87, 0x26, 0xeb, 0x34, 0x95, 0x96, 0x10, 0x9c,
+ 0xb4, 0x08, 0xa8, 0x34, 0x9a, 0xda, 0x6f, 0x9d, 0x91, 0x1c, 0x8f, 0x99, 0x99, 0xa4, 0xbb, 0xfc,
+ 0x02, 0xee, 0x88, 0x03, 0x27, 0x0e, 0x48, 0x1c, 0xb8, 0x71, 0xe1, 0x47, 0xac, 0xc4, 0x01, 0x7e,
+ 0x01, 0x67, 0x7e, 0x01, 0x47, 0xe4, 0x19, 0xa7, 0x71, 0xdd, 0x74, 0xa9, 0x54, 0x8e, 0x9e, 0xe7,
+ 0x79, 0x9f, 0xf7, 0x79, 0xde, 0x99, 0xc9, 0x04, 0x7d, 0x14, 0x72, 0x1e, 0x46, 0xe0, 0xf8, 0x11,
+ 0x1f, 0x07, 0xce, 0x08, 0x02, 0x46, 0x95, 0xa0, 0xb1, 0x8c, 0xa8, 0x62, 0x3c, 0x76, 0x26, 0xfb,
+ 0xe7, 0xa0, 0xe8, 0xbe, 0x01, 0x48, 0x0e, 0xb1, 0x13, 0xc1, 0x15, 0xc7, 0xbb, 0xa6, 0xdc, 0xd6,
+ 0xe5, 0x76, 0xb1, 0xdc, 0xce, 0xca, 0x6b, 0xdb, 0x59, 0x17, 0x9a, 0x30, 0xe7, 0x82, 0x41, 0x14,
+ 0x90, 0x73, 0x18, 0xd2, 0x09, 0xe3, 0xc2, 0xe8, 0xd4, 0x36, 0x33, 0x82, 0x48, 0x7c, 0x47, 0x2a,
+ 0xaa, 0xc6, 0xb2, 0x00, 0xa4, 0x95, 0x7e, 0xc4, 0x20, 0x56, 0x06, 0xa8, 0xff, 0x56, 0x46, 0x1b,
+ 0x83, 0xac, 0x15, 0xf4, 0x13, 0x00, 0x7f, 0xd8, 0xe2, 0xf1, 0x05, 0x0b, 0xf1, 0x3b, 0xe8, 0x21,
+ 0x1d, 0x07, 0x8c, 0x13, 0x88, 0x7d, 0x1e, 0xb0, 0x38, 0xac, 0x5a, 0x3b, 0xd6, 0xde, 0x6b, 0xcd,
+ 0xca, 0x9f, 0x87, 0x65, 0xef, 0x81, 0x86, 0xdc, 0x0c, 0xc1, 0xef, 0xa3, 0x37, 0x24, 0x1f, 0x0b,
+ 0x1f, 0x48, 0x44, 0xe3, 0x70, 0x4c, 0x43, 0x20, 0x3e, 0x0f, 0xa0, 0x5a, 0x9e, 0x55, 0x60, 0x43,
+ 0x78, 0x96, 0xe1, 0x2d, 0x1e, 0x00, 0xee, 0xa2, 0xc7, 0x34, 0x52, 0x20, 0x62, 0xaa, 0xd8, 0x04,
+ 0xc8, 0x3c, 0x09, 0x59, 0x5d, 0xdc, 0xa9, 0x18, 0x0d, 0xcb, 0xdb, 0xca, 0xb1, 0xfb, 0x37, 0xe4,
+ 0x64, 0x6a, 0x43, 0x51, 0x11, 0x82, 0x2a, 0xd8, 0xa8, 0xe4, 0x6c, 0x18, 0xc2, 0x35, 0x1b, 0x0e,
+ 0x5a, 0x97, 0x74, 0x94, 0x44, 0x40, 0x04, 0x55, 0x40, 0x86, 0x20, 0xd4, 0xd7, 0xd5, 0xff, 0xed,
+ 0x58, 0x7b, 0x0b, 0xa6, 0xed, 0xaa, 0x41, 0x3d, 0xaa, 0xa0, 0x93, 0x62, 0xf8, 0x4d, 0xb4, 0x30,
+ 0xe2, 0x01, 0x44, 0xd5, 0x85, 0xa9, 0xb0, 0xe5, 0x99, 0x95, 0xfa, 0xaf, 0x16, 0xda, 0xea, 0x2b,
+ 0x01, 0x74, 0xc4, 0xe2, 0x70, 0xfe, 0x60, 0x03, 0xb4, 0x62, 0x06, 0xeb, 0xeb, 0x6f, 0x3d, 0xd6,
+ 0xe5, 0x83, 0x0f, 0xed, 0x3b, 0x9d, 0x01, 0x7b, 0xae, 0xa6, 0xc9, 0xb6, 0xac, 0x65, 0xb3, 0x2e,
+ 0x36, 0x5a, 0x93, 0x2c, 0x0e, 0x23, 0x20, 0x63, 0xa5, 0x40, 0xd0, 0xd8, 0x37, 0xdb, 0xb1, 0x34,
+ 0xcd, 0xa4, 0xc1, 0x93, 0x29, 0x56, 0xff, 0xdd, 0x42, 0xdb, 0xb7, 0x19, 0xf7, 0xe0, 0xab, 0x31,
+ 0x48, 0x85, 0x05, 0x5a, 0x93, 0x53, 0xca, 0x75, 0xf7, 0xee, 0x1d, 0xdd, 0xbf, 0x7a, 0x34, 0x9d,
+ 0x92, 0xb7, 0x7a, 0xd5, 0x20, 0xcb, 0xb1, 0x8b, 0x1e, 0x5c, 0x4d, 0x4b, 0x41, 0xac, 0x74, 0x88,
+ 0x95, 0x4e, 0xc9, 0x5b, 0x99, 0xa6, 0x4d, 0x57, 0x9b, 0xaf, 0xa3, 0xf5, 0x99, 0x35, 0x61, 0xfc,
+ 0xd6, 0x7f, 0xa8, 0xdc, 0xbe, 0x19, 0x1e, 0xc8, 0x71, 0xa4, 0xf0, 0x77, 0x16, 0xda, 0x54, 0xf0,
+ 0x5c, 0xe5, 0x2f, 0x25, 0x11, 0x1a, 0xcb, 0xa2, 0x7d, 0x79, 0xcf, 0x68, 0xa6, 0x91, 0x3d, 0x80,
+ 0xe7, 0x6a, 0x30, 0x2b, 0x33, 0xab, 0x9d, 0x92, 0xb7, 0xa1, 0xe6, 0x01, 0xf8, 0x00, 0x61, 0x01,
+ 0x3e, 0x0f, 0x63, 0x96, 0x77, 0x74, 0x75, 0x90, 0x2b, 0xde, 0x7a, 0x0e, 0x36, 0x35, 0xb5, 0x9f,
+ 0x2c, 0xb4, 0x31, 0xb7, 0x0d, 0xde, 0x45, 0xcb, 0x39, 0xcb, 0xb3, 0x8b, 0x5c, 0xf1, 0xf2, 0xeb,
+ 0x78, 0x0b, 0x2d, 0x31, 0x49, 0x2e, 0x58, 0x4c, 0xa3, 0xd9, 0x59, 0xa9, 0x78, 0xff, 0x67, 0xb2,
+ 0x9d, 0xae, 0xe1, 0x36, 0x7a, 0x14, 0x80, 0x02, 0x5f, 0x41, 0x30, 0xf7, 0xb2, 0xe6, 0xfd, 0xd5,
+ 0xa6, 0xcc, 0x9b, 0x17, 0xb5, 0xb9, 0x84, 0x16, 0x4d, 0xa0, 0xfa, 0xb7, 0x15, 0xb4, 0xf3, 0x8a,
+ 0xc1, 0x25, 0x3c, 0x96, 0x80, 0x9f, 0xa0, 0x05, 0x10, 0x82, 0x8b, 0x6c, 0x43, 0xf0, 0x74, 0x43,
+ 0x44, 0xe2, 0xdb, 0x7d, 0xfd, 0x2b, 0x67, 0x5a, 0x1a, 0x16, 0x3e, 0x9f, 0xaa, 0xeb, 0x0c, 0xf7,
+ 0x3f, 0x9b, 0x66, 0x86, 0xa6, 0x45, 0xa6, 0x8c, 0xbf, 0xb1, 0xd0, 0xba, 0xd4, 0x28, 0x81, 0x09,
+ 0xc4, 0x8a, 0xa8, 0x17, 0x89, 0x89, 0xff, 0xf0, 0xe0, 0xb3, 0xfb, 0xf7, 0xd3, 0xb9, 0x6d, 0xf3,
+ 0xe9, 0xa6, 0xfa, 0x83, 0x17, 0x09, 0x18, 0x07, 0xab, 0xf2, 0xfa, 0x6a, 0xfd, 0x53, 0xb4, 0x5a,
+ 0x20, 0xe2, 0xc7, 0xe8, 0x51, 0xbf, 0xe7, 0xba, 0xad, 0x0e, 0x71, 0x4f, 0xdd, 0xee, 0x80, 0x0c,
+ 0x3e, 0xef, 0xb9, 0xe4, 0xa4, 0xdb, 0xef, 0xb9, 0xad, 0xe3, 0xf6, 0xb1, 0xfb, 0x74, 0xad, 0x84,
+ 0xdf, 0x42, 0x9b, 0x6e, 0xf7, 0x29, 0xf9, 0xa4, 0x4d, 0xfa, 0xc7, 0xdd, 0xa3, 0x67, 0x2e, 0x39,
+ 0x19, 0x0c, 0x5c, 0xef, 0xb0, 0xdb, 0x72, 0xd7, 0xac, 0x83, 0x1f, 0xcb, 0xa8, 0x6a, 0x34, 0x73,
+ 0x47, 0xa9, 0x0f, 0x62, 0xc2, 0x7c, 0xc0, 0xbf, 0x58, 0xa8, 0x7a, 0x9b, 0x75, 0xdc, 0xbe, 0x77,
+ 0x76, 0x7d, 0x73, 0x6b, 0x47, 0xff, 0xd1, 0x0c, 0xeb, 0xa5, 0x3d, 0xeb, 0x5d, 0xab, 0xd6, 0x7f,
+ 0x79, 0xb8, 0x7d, 0x43, 0xc3, 0x74, 0xa0, 0x09, 0x93, 0xb6, 0xcf, 0x47, 0x7f, 0x1c, 0xda, 0x43,
+ 0xa5, 0x12, 0xd9, 0x70, 0x9c, 0xcb, 0xcb, 0xcb, 0x02, 0xe8, 0xd0, 0xb1, 0x1a, 0x9a, 0xc7, 0xfd,
+ 0x49, 0x12, 0x51, 0x75, 0xc1, 0xc5, 0xa8, 0xf9, 0x7d, 0x19, 0xbd, 0xed, 0xf3, 0xd1, 0xdd, 0x9c,
+ 0x36, 0x37, 0x3e, 0x4e, 0x91, 0xdc, 0x3c, 0x7b, 0xe9, 0xfb, 0xdb, 0xb3, 0xbe, 0x38, 0xc9, 0xea,
+ 0x43, 0x9e, 0xde, 0x25, 0x9b, 0x8b, 0xd0, 0x09, 0x21, 0xd6, 0xaf, 0xb3, 0x33, 0x73, 0xf1, 0x2f,
+ 0xff, 0x2c, 0x3e, 0x28, 0x02, 0x7f, 0x5b, 0xd6, 0xcf, 0xe5, 0xdd, 0x23, 0x23, 0xdd, 0xd2, 0xd6,
+ 0x8a, 0x06, 0xec, 0xd3, 0xfd, 0x66, 0x5a, 0xfb, 0x72, 0xca, 0x3b, 0xd3, 0xbc, 0xb3, 0x22, 0xef,
+ 0xec, 0xd4, 0xf4, 0xf8, 0xab, 0xbc, 0x67, 0x78, 0x8d, 0x86, 0x26, 0x36, 0x1a, 0x45, 0x66, 0xa3,
+ 0x91, 0x51, 0xcf, 0x17, 0xb5, 0xff, 0xf7, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0xf8, 0xa7, 0xc3,
+ 0x21, 0x18, 0x09, 0x00, 0x00,
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// SpeechTranslationServiceClient is the client API for SpeechTranslationService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type SpeechTranslationServiceClient interface {
+ // Performs bidirectional streaming speech translation: receive results while
+ // sending audio. This method is only available via the gRPC API (not REST).
+ StreamingTranslateSpeech(ctx context.Context, opts ...grpc.CallOption) (SpeechTranslationService_StreamingTranslateSpeechClient, error)
+}
+
+type speechTranslationServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewSpeechTranslationServiceClient(cc grpc.ClientConnInterface) SpeechTranslationServiceClient {
+ return &speechTranslationServiceClient{cc}
+}
+
+func (c *speechTranslationServiceClient) StreamingTranslateSpeech(ctx context.Context, opts ...grpc.CallOption) (SpeechTranslationService_StreamingTranslateSpeechClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_SpeechTranslationService_serviceDesc.Streams[0], "/google.cloud.mediatranslation.v1beta1.SpeechTranslationService/StreamingTranslateSpeech", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &speechTranslationServiceStreamingTranslateSpeechClient{stream}
+ return x, nil
+}
+
+type SpeechTranslationService_StreamingTranslateSpeechClient interface {
+ Send(*StreamingTranslateSpeechRequest) error
+ Recv() (*StreamingTranslateSpeechResponse, error)
+ grpc.ClientStream
+}
+
+type speechTranslationServiceStreamingTranslateSpeechClient struct {
+ grpc.ClientStream
+}
+
+func (x *speechTranslationServiceStreamingTranslateSpeechClient) Send(m *StreamingTranslateSpeechRequest) error {
+ return x.ClientStream.SendMsg(m)
+}
+
+func (x *speechTranslationServiceStreamingTranslateSpeechClient) Recv() (*StreamingTranslateSpeechResponse, error) {
+ m := new(StreamingTranslateSpeechResponse)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+// SpeechTranslationServiceServer is the server API for SpeechTranslationService service.
+type SpeechTranslationServiceServer interface {
+ // Performs bidirectional streaming speech translation: receive results while
+ // sending audio. This method is only available via the gRPC API (not REST).
+ StreamingTranslateSpeech(SpeechTranslationService_StreamingTranslateSpeechServer) error
+}
+
+// UnimplementedSpeechTranslationServiceServer can be embedded to have forward compatible implementations.
+type UnimplementedSpeechTranslationServiceServer struct {
+}
+
+func (*UnimplementedSpeechTranslationServiceServer) StreamingTranslateSpeech(srv SpeechTranslationService_StreamingTranslateSpeechServer) error {
+ return status1.Errorf(codes.Unimplemented, "method StreamingTranslateSpeech not implemented")
+}
+
+func RegisterSpeechTranslationServiceServer(s *grpc.Server, srv SpeechTranslationServiceServer) {
+ s.RegisterService(&_SpeechTranslationService_serviceDesc, srv)
+}
+
+func _SpeechTranslationService_StreamingTranslateSpeech_Handler(srv interface{}, stream grpc.ServerStream) error {
+ return srv.(SpeechTranslationServiceServer).StreamingTranslateSpeech(&speechTranslationServiceStreamingTranslateSpeechServer{stream})
+}
+
+type SpeechTranslationService_StreamingTranslateSpeechServer interface {
+ Send(*StreamingTranslateSpeechResponse) error
+ Recv() (*StreamingTranslateSpeechRequest, error)
+ grpc.ServerStream
+}
+
+type speechTranslationServiceStreamingTranslateSpeechServer struct {
+ grpc.ServerStream
+}
+
+func (x *speechTranslationServiceStreamingTranslateSpeechServer) Send(m *StreamingTranslateSpeechResponse) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func (x *speechTranslationServiceStreamingTranslateSpeechServer) Recv() (*StreamingTranslateSpeechRequest, error) {
+ m := new(StreamingTranslateSpeechRequest)
+ if err := x.ServerStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+var _SpeechTranslationService_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.mediatranslation.v1beta1.SpeechTranslationService",
+ HandlerType: (*SpeechTranslationServiceServer)(nil),
+ Methods: []grpc.MethodDesc{},
+ Streams: []grpc.StreamDesc{
+ {
+ StreamName: "StreamingTranslateSpeech",
+ Handler: _SpeechTranslationService_StreamingTranslateSpeech_Handler,
+ ServerStreams: true,
+ ClientStreams: true,
+ },
+ },
+ Metadata: "google/cloud/mediatranslation/v1beta1/media_translation.proto",
+}
diff --git a/googleapis/cloud/recaptchaenterprise/v1/recaptchaenterprise.pb.go b/googleapis/cloud/recaptchaenterprise/v1/recaptchaenterprise.pb.go
new file mode 100644
index 0000000000..6cb08ce542
--- /dev/null
+++ b/googleapis/cloud/recaptchaenterprise/v1/recaptchaenterprise.pb.go
@@ -0,0 +1,1740 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto
+
+package recaptchaenterprise
+
+import (
+ context "context"
+ fmt "fmt"
+ math "math"
+
+ proto "github.com/golang/protobuf/proto"
+ empty "github.com/golang/protobuf/ptypes/empty"
+ timestamp "github.com/golang/protobuf/ptypes/timestamp"
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ field_mask "google.golang.org/genproto/protobuf/field_mask"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+
+// Enum that reprensents the types of annotations.
+type AnnotateAssessmentRequest_Annotation int32
+
+const (
+ // Default unspecified type.
+ AnnotateAssessmentRequest_ANNOTATION_UNSPECIFIED AnnotateAssessmentRequest_Annotation = 0
+ // Provides information that the event turned out to be legitimate.
+ AnnotateAssessmentRequest_LEGITIMATE AnnotateAssessmentRequest_Annotation = 1
+ // Provides information that the event turned out to be fraudulent.
+ AnnotateAssessmentRequest_FRAUDULENT AnnotateAssessmentRequest_Annotation = 2
+ // Provides information that the event was related to a login event in which
+ // the user typed the correct password.
+ AnnotateAssessmentRequest_PASSWORD_CORRECT AnnotateAssessmentRequest_Annotation = 3
+ // Provides information that the event was related to a login event in which
+ // the user typed the incorrect password.
+ AnnotateAssessmentRequest_PASSWORD_INCORRECT AnnotateAssessmentRequest_Annotation = 4
+)
+
+var AnnotateAssessmentRequest_Annotation_name = map[int32]string{
+ 0: "ANNOTATION_UNSPECIFIED",
+ 1: "LEGITIMATE",
+ 2: "FRAUDULENT",
+ 3: "PASSWORD_CORRECT",
+ 4: "PASSWORD_INCORRECT",
+}
+
+var AnnotateAssessmentRequest_Annotation_value = map[string]int32{
+ "ANNOTATION_UNSPECIFIED": 0,
+ "LEGITIMATE": 1,
+ "FRAUDULENT": 2,
+ "PASSWORD_CORRECT": 3,
+ "PASSWORD_INCORRECT": 4,
+}
+
+func (x AnnotateAssessmentRequest_Annotation) String() string {
+ return proto.EnumName(AnnotateAssessmentRequest_Annotation_name, int32(x))
+}
+
+func (AnnotateAssessmentRequest_Annotation) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{1, 0}
+}
+
+// LINT.IfChange(classification_reason)
+// Reasons contributing to the risk analysis verdict.
+type RiskAnalysis_ClassificationReason int32
+
+const (
+ // Default unspecified type.
+ RiskAnalysis_CLASSIFICATION_REASON_UNSPECIFIED RiskAnalysis_ClassificationReason = 0
+ // Interactions matched the behavior of an automated agent.
+ RiskAnalysis_AUTOMATION RiskAnalysis_ClassificationReason = 1
+ // The event originated from an illegitimate environment.
+ RiskAnalysis_UNEXPECTED_ENVIRONMENT RiskAnalysis_ClassificationReason = 2
+ // Traffic volume from the event source is higher than normal.
+ RiskAnalysis_TOO_MUCH_TRAFFIC RiskAnalysis_ClassificationReason = 3
+ // Interactions with the site were significantly different than expected
+ // patterns.
+ RiskAnalysis_UNEXPECTED_USAGE_PATTERNS RiskAnalysis_ClassificationReason = 4
+ // Too little traffic has been received from this site thus far to generate
+ // quality risk analysis.
+ RiskAnalysis_LOW_CONFIDENCE_SCORE RiskAnalysis_ClassificationReason = 5
+)
+
+var RiskAnalysis_ClassificationReason_name = map[int32]string{
+ 0: "CLASSIFICATION_REASON_UNSPECIFIED",
+ 1: "AUTOMATION",
+ 2: "UNEXPECTED_ENVIRONMENT",
+ 3: "TOO_MUCH_TRAFFIC",
+ 4: "UNEXPECTED_USAGE_PATTERNS",
+ 5: "LOW_CONFIDENCE_SCORE",
+}
+
+var RiskAnalysis_ClassificationReason_value = map[string]int32{
+ "CLASSIFICATION_REASON_UNSPECIFIED": 0,
+ "AUTOMATION": 1,
+ "UNEXPECTED_ENVIRONMENT": 2,
+ "TOO_MUCH_TRAFFIC": 3,
+ "UNEXPECTED_USAGE_PATTERNS": 4,
+ "LOW_CONFIDENCE_SCORE": 5,
+}
+
+func (x RiskAnalysis_ClassificationReason) String() string {
+ return proto.EnumName(RiskAnalysis_ClassificationReason_name, int32(x))
+}
+
+func (RiskAnalysis_ClassificationReason) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{5, 0}
+}
+
+// LINT.IfChange
+// Enum that represents the types of invalid token reasons.
+type TokenProperties_InvalidReason int32
+
+const (
+ // Default unspecified type.
+ TokenProperties_INVALID_REASON_UNSPECIFIED TokenProperties_InvalidReason = 0
+ // If the failure reason was not accounted for.
+ TokenProperties_UNKNOWN_INVALID_REASON TokenProperties_InvalidReason = 1
+ // The provided user verification token was malformed.
+ TokenProperties_MALFORMED TokenProperties_InvalidReason = 2
+ // The user verification token had expired.
+ TokenProperties_EXPIRED TokenProperties_InvalidReason = 3
+ // The user verification had already been seen.
+ TokenProperties_DUPE TokenProperties_InvalidReason = 4
+ // The user verification token was not present.
+ TokenProperties_MISSING TokenProperties_InvalidReason = 5
+)
+
+var TokenProperties_InvalidReason_name = map[int32]string{
+ 0: "INVALID_REASON_UNSPECIFIED",
+ 1: "UNKNOWN_INVALID_REASON",
+ 2: "MALFORMED",
+ 3: "EXPIRED",
+ 4: "DUPE",
+ 5: "MISSING",
+}
+
+var TokenProperties_InvalidReason_value = map[string]int32{
+ "INVALID_REASON_UNSPECIFIED": 0,
+ "UNKNOWN_INVALID_REASON": 1,
+ "MALFORMED": 2,
+ "EXPIRED": 3,
+ "DUPE": 4,
+ "MISSING": 5,
+}
+
+func (x TokenProperties_InvalidReason) String() string {
+ return proto.EnumName(TokenProperties_InvalidReason_name, int32(x))
+}
+
+func (TokenProperties_InvalidReason) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{6, 0}
+}
+
+// Enum that represents the integration types for web keys.
+type WebKeySettings_IntegrationType int32
+
+const (
+ // Default type that indicates this enum hasn't been specified. This is not
+ // a valid IntegrationType, one of the other types must be specified
+ // instead.
+ WebKeySettings_INTEGRATION_TYPE_UNSPECIFIED WebKeySettings_IntegrationType = 0
+ // Only used to produce scores. It doesn't display the "I'm not a robot"
+ // checkbox and never shows captcha challenges.
+ WebKeySettings_SCORE WebKeySettings_IntegrationType = 1
+ // Displays the "I'm not a robot" checkbox and may show captcha challenges
+ // after it is checked.
+ WebKeySettings_CHECKBOX WebKeySettings_IntegrationType = 2
+ // Doesn't display the "I'm not a robot" checkbox, but may show captcha
+ // challenges after risk analysis.
+ WebKeySettings_INVISIBLE WebKeySettings_IntegrationType = 3
+)
+
+var WebKeySettings_IntegrationType_name = map[int32]string{
+ 0: "INTEGRATION_TYPE_UNSPECIFIED",
+ 1: "SCORE",
+ 2: "CHECKBOX",
+ 3: "INVISIBLE",
+}
+
+var WebKeySettings_IntegrationType_value = map[string]int32{
+ "INTEGRATION_TYPE_UNSPECIFIED": 0,
+ "SCORE": 1,
+ "CHECKBOX": 2,
+ "INVISIBLE": 3,
+}
+
+func (x WebKeySettings_IntegrationType) String() string {
+ return proto.EnumName(WebKeySettings_IntegrationType_name, int32(x))
+}
+
+func (WebKeySettings_IntegrationType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{14, 0}
+}
+
+// Enum that represents the possible challenge frequency and difficulty
+// configurations for a web key.
+type WebKeySettings_ChallengeSecurityPreference int32
+
+const (
+ // Default type that indicates this enum hasn't been specified.
+ WebKeySettings_CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED WebKeySettings_ChallengeSecurityPreference = 0
+ // Key tends to show fewer and easier challenges.
+ WebKeySettings_USABILITY WebKeySettings_ChallengeSecurityPreference = 1
+ // Key tends to show balanced (in amount and difficulty) challenges.
+ WebKeySettings_BALANCE WebKeySettings_ChallengeSecurityPreference = 2
+ // Key tends to show more and harder challenges.
+ WebKeySettings_SECURITY WebKeySettings_ChallengeSecurityPreference = 3
+)
+
+var WebKeySettings_ChallengeSecurityPreference_name = map[int32]string{
+ 0: "CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED",
+ 1: "USABILITY",
+ 2: "BALANCE",
+ 3: "SECURITY",
+}
+
+var WebKeySettings_ChallengeSecurityPreference_value = map[string]int32{
+ "CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED": 0,
+ "USABILITY": 1,
+ "BALANCE": 2,
+ "SECURITY": 3,
+}
+
+func (x WebKeySettings_ChallengeSecurityPreference) String() string {
+ return proto.EnumName(WebKeySettings_ChallengeSecurityPreference_name, int32(x))
+}
+
+func (WebKeySettings_ChallengeSecurityPreference) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{14, 1}
+}
+
+// The create assessment request message.
+type CreateAssessmentRequest struct {
+ // Required. The name of the project in which the assessment will be created,
+ // in the format "projects/{project}".
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The assessment details.
+ Assessment *Assessment `protobuf:"bytes,2,opt,name=assessment,proto3" json:"assessment,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CreateAssessmentRequest) Reset() { *m = CreateAssessmentRequest{} }
+func (m *CreateAssessmentRequest) String() string { return proto.CompactTextString(m) }
+func (*CreateAssessmentRequest) ProtoMessage() {}
+func (*CreateAssessmentRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{0}
+}
+
+func (m *CreateAssessmentRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CreateAssessmentRequest.Unmarshal(m, b)
+}
+func (m *CreateAssessmentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CreateAssessmentRequest.Marshal(b, m, deterministic)
+}
+func (m *CreateAssessmentRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CreateAssessmentRequest.Merge(m, src)
+}
+func (m *CreateAssessmentRequest) XXX_Size() int {
+ return xxx_messageInfo_CreateAssessmentRequest.Size(m)
+}
+func (m *CreateAssessmentRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_CreateAssessmentRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CreateAssessmentRequest proto.InternalMessageInfo
+
+func (m *CreateAssessmentRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *CreateAssessmentRequest) GetAssessment() *Assessment {
+ if m != nil {
+ return m.Assessment
+ }
+ return nil
+}
+
+// The request message to annotate an Assessment.
+type AnnotateAssessmentRequest struct {
+ // Required. The resource name of the Assessment, in the format
+ // "projects/{project}/assessments/{assessment}".
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The annotation that will be assigned to the Event.
+ Annotation AnnotateAssessmentRequest_Annotation `protobuf:"varint,2,opt,name=annotation,proto3,enum=google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest_Annotation" json:"annotation,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AnnotateAssessmentRequest) Reset() { *m = AnnotateAssessmentRequest{} }
+func (m *AnnotateAssessmentRequest) String() string { return proto.CompactTextString(m) }
+func (*AnnotateAssessmentRequest) ProtoMessage() {}
+func (*AnnotateAssessmentRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{1}
+}
+
+func (m *AnnotateAssessmentRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AnnotateAssessmentRequest.Unmarshal(m, b)
+}
+func (m *AnnotateAssessmentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AnnotateAssessmentRequest.Marshal(b, m, deterministic)
+}
+func (m *AnnotateAssessmentRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AnnotateAssessmentRequest.Merge(m, src)
+}
+func (m *AnnotateAssessmentRequest) XXX_Size() int {
+ return xxx_messageInfo_AnnotateAssessmentRequest.Size(m)
+}
+func (m *AnnotateAssessmentRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_AnnotateAssessmentRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AnnotateAssessmentRequest proto.InternalMessageInfo
+
+func (m *AnnotateAssessmentRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *AnnotateAssessmentRequest) GetAnnotation() AnnotateAssessmentRequest_Annotation {
+ if m != nil {
+ return m.Annotation
+ }
+ return AnnotateAssessmentRequest_ANNOTATION_UNSPECIFIED
+}
+
+// Empty response for AnnotateAssessment.
+type AnnotateAssessmentResponse struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AnnotateAssessmentResponse) Reset() { *m = AnnotateAssessmentResponse{} }
+func (m *AnnotateAssessmentResponse) String() string { return proto.CompactTextString(m) }
+func (*AnnotateAssessmentResponse) ProtoMessage() {}
+func (*AnnotateAssessmentResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{2}
+}
+
+func (m *AnnotateAssessmentResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AnnotateAssessmentResponse.Unmarshal(m, b)
+}
+func (m *AnnotateAssessmentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AnnotateAssessmentResponse.Marshal(b, m, deterministic)
+}
+func (m *AnnotateAssessmentResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AnnotateAssessmentResponse.Merge(m, src)
+}
+func (m *AnnotateAssessmentResponse) XXX_Size() int {
+ return xxx_messageInfo_AnnotateAssessmentResponse.Size(m)
+}
+func (m *AnnotateAssessmentResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_AnnotateAssessmentResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AnnotateAssessmentResponse proto.InternalMessageInfo
+
+// A recaptcha assessment resource.
+type Assessment struct {
+ // Output only. The resource name for the Assessment in the format
+ // "projects/{project}/assessments/{assessment}".
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The event being assessed.
+ Event *Event `protobuf:"bytes,2,opt,name=event,proto3" json:"event,omitempty"`
+ // Output only. The risk analysis result for the event being assessed.
+ RiskAnalysis *RiskAnalysis `protobuf:"bytes,3,opt,name=risk_analysis,json=riskAnalysis,proto3" json:"risk_analysis,omitempty"`
+ // Output only. Properties of the provided event token.
+ TokenProperties *TokenProperties `protobuf:"bytes,4,opt,name=token_properties,json=tokenProperties,proto3" json:"token_properties,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Assessment) Reset() { *m = Assessment{} }
+func (m *Assessment) String() string { return proto.CompactTextString(m) }
+func (*Assessment) ProtoMessage() {}
+func (*Assessment) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{3}
+}
+
+func (m *Assessment) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Assessment.Unmarshal(m, b)
+}
+func (m *Assessment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Assessment.Marshal(b, m, deterministic)
+}
+func (m *Assessment) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Assessment.Merge(m, src)
+}
+func (m *Assessment) XXX_Size() int {
+ return xxx_messageInfo_Assessment.Size(m)
+}
+func (m *Assessment) XXX_DiscardUnknown() {
+ xxx_messageInfo_Assessment.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Assessment proto.InternalMessageInfo
+
+func (m *Assessment) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *Assessment) GetEvent() *Event {
+ if m != nil {
+ return m.Event
+ }
+ return nil
+}
+
+func (m *Assessment) GetRiskAnalysis() *RiskAnalysis {
+ if m != nil {
+ return m.RiskAnalysis
+ }
+ return nil
+}
+
+func (m *Assessment) GetTokenProperties() *TokenProperties {
+ if m != nil {
+ return m.TokenProperties
+ }
+ return nil
+}
+
+type Event struct {
+ // Optional. The user response token provided by the reCAPTCHA client-side integration
+ // on your site.
+ Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
+ // Optional. The site key that was used to invoke reCAPTCHA on your site and generate
+ // the token.
+ SiteKey string `protobuf:"bytes,2,opt,name=site_key,json=siteKey,proto3" json:"site_key,omitempty"`
+ // Optional. The user agent present in the request from the user's device related to
+ // this event.
+ UserAgent string `protobuf:"bytes,3,opt,name=user_agent,json=userAgent,proto3" json:"user_agent,omitempty"`
+ // Optional. The IP address in the request from the user's device related to this event.
+ UserIpAddress string `protobuf:"bytes,4,opt,name=user_ip_address,json=userIpAddress,proto3" json:"user_ip_address,omitempty"`
+ // Optional. The expected action for this type of event. This should be the same action
+ // provided at token generation time on client-side platforms already
+ // integrated with recaptcha enterprise.
+ ExpectedAction string `protobuf:"bytes,5,opt,name=expected_action,json=expectedAction,proto3" json:"expected_action,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Event) Reset() { *m = Event{} }
+func (m *Event) String() string { return proto.CompactTextString(m) }
+func (*Event) ProtoMessage() {}
+func (*Event) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{4}
+}
+
+func (m *Event) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Event.Unmarshal(m, b)
+}
+func (m *Event) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Event.Marshal(b, m, deterministic)
+}
+func (m *Event) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Event.Merge(m, src)
+}
+func (m *Event) XXX_Size() int {
+ return xxx_messageInfo_Event.Size(m)
+}
+func (m *Event) XXX_DiscardUnknown() {
+ xxx_messageInfo_Event.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Event proto.InternalMessageInfo
+
+func (m *Event) GetToken() string {
+ if m != nil {
+ return m.Token
+ }
+ return ""
+}
+
+func (m *Event) GetSiteKey() string {
+ if m != nil {
+ return m.SiteKey
+ }
+ return ""
+}
+
+func (m *Event) GetUserAgent() string {
+ if m != nil {
+ return m.UserAgent
+ }
+ return ""
+}
+
+func (m *Event) GetUserIpAddress() string {
+ if m != nil {
+ return m.UserIpAddress
+ }
+ return ""
+}
+
+func (m *Event) GetExpectedAction() string {
+ if m != nil {
+ return m.ExpectedAction
+ }
+ return ""
+}
+
+// Risk analysis result for an event.
+type RiskAnalysis struct {
+ // Legitimate event score from 0.0 to 1.0.
+ // (1.0 means very likely legitimate traffic while 0.0 means very likely
+ // non-legitimate traffic).
+ Score float32 `protobuf:"fixed32,1,opt,name=score,proto3" json:"score,omitempty"`
+ // Reasons contributing to the risk analysis verdict.
+ Reasons []RiskAnalysis_ClassificationReason `protobuf:"varint,2,rep,packed,name=reasons,proto3,enum=google.cloud.recaptchaenterprise.v1.RiskAnalysis_ClassificationReason" json:"reasons,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *RiskAnalysis) Reset() { *m = RiskAnalysis{} }
+func (m *RiskAnalysis) String() string { return proto.CompactTextString(m) }
+func (*RiskAnalysis) ProtoMessage() {}
+func (*RiskAnalysis) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{5}
+}
+
+func (m *RiskAnalysis) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_RiskAnalysis.Unmarshal(m, b)
+}
+func (m *RiskAnalysis) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_RiskAnalysis.Marshal(b, m, deterministic)
+}
+func (m *RiskAnalysis) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_RiskAnalysis.Merge(m, src)
+}
+func (m *RiskAnalysis) XXX_Size() int {
+ return xxx_messageInfo_RiskAnalysis.Size(m)
+}
+func (m *RiskAnalysis) XXX_DiscardUnknown() {
+ xxx_messageInfo_RiskAnalysis.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_RiskAnalysis proto.InternalMessageInfo
+
+func (m *RiskAnalysis) GetScore() float32 {
+ if m != nil {
+ return m.Score
+ }
+ return 0
+}
+
+func (m *RiskAnalysis) GetReasons() []RiskAnalysis_ClassificationReason {
+ if m != nil {
+ return m.Reasons
+ }
+ return nil
+}
+
+type TokenProperties struct {
+ // Whether the provided user response token is valid. When valid = false, the
+ // reason could be specified in invalid_reason or it could also be due to
+ // a user failing to solve a challenge or a sitekey mismatch (i.e the sitekey
+ // used to generate the token was different than the one specified in the
+ // assessment).
+ Valid bool `protobuf:"varint,1,opt,name=valid,proto3" json:"valid,omitempty"`
+ // Reason associated with the response when valid = false.
+ InvalidReason TokenProperties_InvalidReason `protobuf:"varint,2,opt,name=invalid_reason,json=invalidReason,proto3,enum=google.cloud.recaptchaenterprise.v1.TokenProperties_InvalidReason" json:"invalid_reason,omitempty"`
+ // The timestamp corresponding to the generation of the token.
+ CreateTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // The hostname of the page on which the token was generated.
+ Hostname string `protobuf:"bytes,4,opt,name=hostname,proto3" json:"hostname,omitempty"`
+ // Action name provided at token generation.
+ Action string `protobuf:"bytes,5,opt,name=action,proto3" json:"action,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TokenProperties) Reset() { *m = TokenProperties{} }
+func (m *TokenProperties) String() string { return proto.CompactTextString(m) }
+func (*TokenProperties) ProtoMessage() {}
+func (*TokenProperties) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{6}
+}
+
+func (m *TokenProperties) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TokenProperties.Unmarshal(m, b)
+}
+func (m *TokenProperties) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TokenProperties.Marshal(b, m, deterministic)
+}
+func (m *TokenProperties) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TokenProperties.Merge(m, src)
+}
+func (m *TokenProperties) XXX_Size() int {
+ return xxx_messageInfo_TokenProperties.Size(m)
+}
+func (m *TokenProperties) XXX_DiscardUnknown() {
+ xxx_messageInfo_TokenProperties.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TokenProperties proto.InternalMessageInfo
+
+func (m *TokenProperties) GetValid() bool {
+ if m != nil {
+ return m.Valid
+ }
+ return false
+}
+
+func (m *TokenProperties) GetInvalidReason() TokenProperties_InvalidReason {
+ if m != nil {
+ return m.InvalidReason
+ }
+ return TokenProperties_INVALID_REASON_UNSPECIFIED
+}
+
+func (m *TokenProperties) GetCreateTime() *timestamp.Timestamp {
+ if m != nil {
+ return m.CreateTime
+ }
+ return nil
+}
+
+func (m *TokenProperties) GetHostname() string {
+ if m != nil {
+ return m.Hostname
+ }
+ return ""
+}
+
+func (m *TokenProperties) GetAction() string {
+ if m != nil {
+ return m.Action
+ }
+ return ""
+}
+
+// The create key request message.
+type CreateKeyRequest struct {
+ // Required. The name of the project in which the key will be created, in the
+ // format "projects/{project}".
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. Information to create a reCAPTCHA Enterprise key.
+ Key *Key `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CreateKeyRequest) Reset() { *m = CreateKeyRequest{} }
+func (m *CreateKeyRequest) String() string { return proto.CompactTextString(m) }
+func (*CreateKeyRequest) ProtoMessage() {}
+func (*CreateKeyRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{7}
+}
+
+func (m *CreateKeyRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CreateKeyRequest.Unmarshal(m, b)
+}
+func (m *CreateKeyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CreateKeyRequest.Marshal(b, m, deterministic)
+}
+func (m *CreateKeyRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CreateKeyRequest.Merge(m, src)
+}
+func (m *CreateKeyRequest) XXX_Size() int {
+ return xxx_messageInfo_CreateKeyRequest.Size(m)
+}
+func (m *CreateKeyRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_CreateKeyRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CreateKeyRequest proto.InternalMessageInfo
+
+func (m *CreateKeyRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *CreateKeyRequest) GetKey() *Key {
+ if m != nil {
+ return m.Key
+ }
+ return nil
+}
+
+// The list keys request message.
+type ListKeysRequest struct {
+ // Required. The name of the project that contains the keys that will be
+ // listed, in the format "projects/{project}".
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of keys to return. Default is 10. Max limit is
+ // 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous.
+ // ListKeysRequest, if any.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ListKeysRequest) Reset() { *m = ListKeysRequest{} }
+func (m *ListKeysRequest) String() string { return proto.CompactTextString(m) }
+func (*ListKeysRequest) ProtoMessage() {}
+func (*ListKeysRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{8}
+}
+
+func (m *ListKeysRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ListKeysRequest.Unmarshal(m, b)
+}
+func (m *ListKeysRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ListKeysRequest.Marshal(b, m, deterministic)
+}
+func (m *ListKeysRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ListKeysRequest.Merge(m, src)
+}
+func (m *ListKeysRequest) XXX_Size() int {
+ return xxx_messageInfo_ListKeysRequest.Size(m)
+}
+func (m *ListKeysRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_ListKeysRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ListKeysRequest proto.InternalMessageInfo
+
+func (m *ListKeysRequest) GetParent() string {
+ if m != nil {
+ return m.Parent
+ }
+ return ""
+}
+
+func (m *ListKeysRequest) GetPageSize() int32 {
+ if m != nil {
+ return m.PageSize
+ }
+ return 0
+}
+
+func (m *ListKeysRequest) GetPageToken() string {
+ if m != nil {
+ return m.PageToken
+ }
+ return ""
+}
+
+// Response to request to list keys in a project.
+type ListKeysResponse struct {
+ // Key details.
+ Keys []*Key `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
+ // Token to retrieve the next page of results. It is set to empty if no keys
+ // remain in results.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ListKeysResponse) Reset() { *m = ListKeysResponse{} }
+func (m *ListKeysResponse) String() string { return proto.CompactTextString(m) }
+func (*ListKeysResponse) ProtoMessage() {}
+func (*ListKeysResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{9}
+}
+
+func (m *ListKeysResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ListKeysResponse.Unmarshal(m, b)
+}
+func (m *ListKeysResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ListKeysResponse.Marshal(b, m, deterministic)
+}
+func (m *ListKeysResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ListKeysResponse.Merge(m, src)
+}
+func (m *ListKeysResponse) XXX_Size() int {
+ return xxx_messageInfo_ListKeysResponse.Size(m)
+}
+func (m *ListKeysResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_ListKeysResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ListKeysResponse proto.InternalMessageInfo
+
+func (m *ListKeysResponse) GetKeys() []*Key {
+ if m != nil {
+ return m.Keys
+ }
+ return nil
+}
+
+func (m *ListKeysResponse) GetNextPageToken() string {
+ if m != nil {
+ return m.NextPageToken
+ }
+ return ""
+}
+
+// The get key request message.
+type GetKeyRequest struct {
+ // Required. The name of the requested key, in the format
+ // "projects/{project}/keys/{key}".
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *GetKeyRequest) Reset() { *m = GetKeyRequest{} }
+func (m *GetKeyRequest) String() string { return proto.CompactTextString(m) }
+func (*GetKeyRequest) ProtoMessage() {}
+func (*GetKeyRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{10}
+}
+
+func (m *GetKeyRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_GetKeyRequest.Unmarshal(m, b)
+}
+func (m *GetKeyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_GetKeyRequest.Marshal(b, m, deterministic)
+}
+func (m *GetKeyRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_GetKeyRequest.Merge(m, src)
+}
+func (m *GetKeyRequest) XXX_Size() int {
+ return xxx_messageInfo_GetKeyRequest.Size(m)
+}
+func (m *GetKeyRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_GetKeyRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_GetKeyRequest proto.InternalMessageInfo
+
+func (m *GetKeyRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+// The update key request message.
+type UpdateKeyRequest struct {
+ // Required. The key to update.
+ Key *Key `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
+ // Optional. The mask to control which field of the key get updated. If the mask is not
+ // present, all fields will be updated.
+ UpdateMask *field_mask.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *UpdateKeyRequest) Reset() { *m = UpdateKeyRequest{} }
+func (m *UpdateKeyRequest) String() string { return proto.CompactTextString(m) }
+func (*UpdateKeyRequest) ProtoMessage() {}
+func (*UpdateKeyRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{11}
+}
+
+func (m *UpdateKeyRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_UpdateKeyRequest.Unmarshal(m, b)
+}
+func (m *UpdateKeyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_UpdateKeyRequest.Marshal(b, m, deterministic)
+}
+func (m *UpdateKeyRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_UpdateKeyRequest.Merge(m, src)
+}
+func (m *UpdateKeyRequest) XXX_Size() int {
+ return xxx_messageInfo_UpdateKeyRequest.Size(m)
+}
+func (m *UpdateKeyRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_UpdateKeyRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_UpdateKeyRequest proto.InternalMessageInfo
+
+func (m *UpdateKeyRequest) GetKey() *Key {
+ if m != nil {
+ return m.Key
+ }
+ return nil
+}
+
+func (m *UpdateKeyRequest) GetUpdateMask() *field_mask.FieldMask {
+ if m != nil {
+ return m.UpdateMask
+ }
+ return nil
+}
+
+// The delete key request message.
+type DeleteKeyRequest struct {
+ // Required. The name of the key to be deleted, in the format
+ // "projects/{project}/keys/{key}".
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeleteKeyRequest) Reset() { *m = DeleteKeyRequest{} }
+func (m *DeleteKeyRequest) String() string { return proto.CompactTextString(m) }
+func (*DeleteKeyRequest) ProtoMessage() {}
+func (*DeleteKeyRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{12}
+}
+
+func (m *DeleteKeyRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeleteKeyRequest.Unmarshal(m, b)
+}
+func (m *DeleteKeyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeleteKeyRequest.Marshal(b, m, deterministic)
+}
+func (m *DeleteKeyRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeleteKeyRequest.Merge(m, src)
+}
+func (m *DeleteKeyRequest) XXX_Size() int {
+ return xxx_messageInfo_DeleteKeyRequest.Size(m)
+}
+func (m *DeleteKeyRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeleteKeyRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeleteKeyRequest proto.InternalMessageInfo
+
+func (m *DeleteKeyRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+// A key used to identify and configure applications (web and/or mobile) that
+// use reCAPTCHA Enterprise.
+type Key struct {
+ // The resource name for the Key in the format
+ // "projects/{project}/keys/{key}".
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Human-readable display name of this key. Modifiable by user.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Platform specific settings for this key. The key can only be used on one
+ // platform, the one it has settings for.
+ //
+ // Types that are valid to be assigned to PlatformSettings:
+ // *Key_WebSettings
+ // *Key_AndroidSettings
+ // *Key_IosSettings
+ PlatformSettings isKey_PlatformSettings `protobuf_oneof:"platform_settings"`
+ // Optional. See
+ // Creating and managing labels.
+ Labels map[string]string `protobuf:"bytes,6,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // The timestamp corresponding to the creation of this Key.
+ CreateTime *timestamp.Timestamp `protobuf:"bytes,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Key) Reset() { *m = Key{} }
+func (m *Key) String() string { return proto.CompactTextString(m) }
+func (*Key) ProtoMessage() {}
+func (*Key) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{13}
+}
+
+func (m *Key) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Key.Unmarshal(m, b)
+}
+func (m *Key) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Key.Marshal(b, m, deterministic)
+}
+func (m *Key) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Key.Merge(m, src)
+}
+func (m *Key) XXX_Size() int {
+ return xxx_messageInfo_Key.Size(m)
+}
+func (m *Key) XXX_DiscardUnknown() {
+ xxx_messageInfo_Key.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Key proto.InternalMessageInfo
+
+func (m *Key) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *Key) GetDisplayName() string {
+ if m != nil {
+ return m.DisplayName
+ }
+ return ""
+}
+
+type isKey_PlatformSettings interface {
+ isKey_PlatformSettings()
+}
+
+type Key_WebSettings struct {
+ WebSettings *WebKeySettings `protobuf:"bytes,3,opt,name=web_settings,json=webSettings,proto3,oneof"`
+}
+
+type Key_AndroidSettings struct {
+ AndroidSettings *AndroidKeySettings `protobuf:"bytes,4,opt,name=android_settings,json=androidSettings,proto3,oneof"`
+}
+
+type Key_IosSettings struct {
+ IosSettings *IOSKeySettings `protobuf:"bytes,5,opt,name=ios_settings,json=iosSettings,proto3,oneof"`
+}
+
+func (*Key_WebSettings) isKey_PlatformSettings() {}
+
+func (*Key_AndroidSettings) isKey_PlatformSettings() {}
+
+func (*Key_IosSettings) isKey_PlatformSettings() {}
+
+func (m *Key) GetPlatformSettings() isKey_PlatformSettings {
+ if m != nil {
+ return m.PlatformSettings
+ }
+ return nil
+}
+
+func (m *Key) GetWebSettings() *WebKeySettings {
+ if x, ok := m.GetPlatformSettings().(*Key_WebSettings); ok {
+ return x.WebSettings
+ }
+ return nil
+}
+
+func (m *Key) GetAndroidSettings() *AndroidKeySettings {
+ if x, ok := m.GetPlatformSettings().(*Key_AndroidSettings); ok {
+ return x.AndroidSettings
+ }
+ return nil
+}
+
+func (m *Key) GetIosSettings() *IOSKeySettings {
+ if x, ok := m.GetPlatformSettings().(*Key_IosSettings); ok {
+ return x.IosSettings
+ }
+ return nil
+}
+
+func (m *Key) GetLabels() map[string]string {
+ if m != nil {
+ return m.Labels
+ }
+ return nil
+}
+
+func (m *Key) GetCreateTime() *timestamp.Timestamp {
+ if m != nil {
+ return m.CreateTime
+ }
+ return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*Key) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*Key_WebSettings)(nil),
+ (*Key_AndroidSettings)(nil),
+ (*Key_IosSettings)(nil),
+ }
+}
+
+// Settings specific to keys that can be used by websites.
+type WebKeySettings struct {
+ // If set to true, it means allowed_domains will not be enforced.
+ AllowAllDomains bool `protobuf:"varint,3,opt,name=allow_all_domains,json=allowAllDomains,proto3" json:"allow_all_domains,omitempty"`
+ // Domains or subdomains of websites allowed to use the key. All subdomains
+ // of an allowed domain are automatically allowed. A valid domain requires a
+ // host and must not include any path, port, query or fragment.
+ // Examples: 'example.com' or 'subdomain.example.com'
+ AllowedDomains []string `protobuf:"bytes,1,rep,name=allowed_domains,json=allowedDomains,proto3" json:"allowed_domains,omitempty"`
+ // Required. Whether this key can be used on AMP (Accelerated Mobile Pages) websites.
+ AllowAmpTraffic bool `protobuf:"varint,2,opt,name=allow_amp_traffic,json=allowAmpTraffic,proto3" json:"allow_amp_traffic,omitempty"`
+ // Required. Describes how this key is integrated with the website.
+ IntegrationType WebKeySettings_IntegrationType `protobuf:"varint,4,opt,name=integration_type,json=integrationType,proto3,enum=google.cloud.recaptchaenterprise.v1.WebKeySettings_IntegrationType" json:"integration_type,omitempty"`
+ // Settings for the frequency and difficulty at which this key triggers
+ // captcha challenges. This should only be specified for IntegrationTypes
+ // CHECKBOX and INVISIBLE.
+ ChallengeSecurityPreference WebKeySettings_ChallengeSecurityPreference `protobuf:"varint,5,opt,name=challenge_security_preference,json=challengeSecurityPreference,proto3,enum=google.cloud.recaptchaenterprise.v1.WebKeySettings_ChallengeSecurityPreference" json:"challenge_security_preference,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *WebKeySettings) Reset() { *m = WebKeySettings{} }
+func (m *WebKeySettings) String() string { return proto.CompactTextString(m) }
+func (*WebKeySettings) ProtoMessage() {}
+func (*WebKeySettings) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{14}
+}
+
+func (m *WebKeySettings) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_WebKeySettings.Unmarshal(m, b)
+}
+func (m *WebKeySettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_WebKeySettings.Marshal(b, m, deterministic)
+}
+func (m *WebKeySettings) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_WebKeySettings.Merge(m, src)
+}
+func (m *WebKeySettings) XXX_Size() int {
+ return xxx_messageInfo_WebKeySettings.Size(m)
+}
+func (m *WebKeySettings) XXX_DiscardUnknown() {
+ xxx_messageInfo_WebKeySettings.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_WebKeySettings proto.InternalMessageInfo
+
+func (m *WebKeySettings) GetAllowAllDomains() bool {
+ if m != nil {
+ return m.AllowAllDomains
+ }
+ return false
+}
+
+func (m *WebKeySettings) GetAllowedDomains() []string {
+ if m != nil {
+ return m.AllowedDomains
+ }
+ return nil
+}
+
+func (m *WebKeySettings) GetAllowAmpTraffic() bool {
+ if m != nil {
+ return m.AllowAmpTraffic
+ }
+ return false
+}
+
+func (m *WebKeySettings) GetIntegrationType() WebKeySettings_IntegrationType {
+ if m != nil {
+ return m.IntegrationType
+ }
+ return WebKeySettings_INTEGRATION_TYPE_UNSPECIFIED
+}
+
+func (m *WebKeySettings) GetChallengeSecurityPreference() WebKeySettings_ChallengeSecurityPreference {
+ if m != nil {
+ return m.ChallengeSecurityPreference
+ }
+ return WebKeySettings_CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED
+}
+
+// Settings specific to keys that can be used by Android apps.
+type AndroidKeySettings struct {
+ // Android package names of apps allowed to use the key.
+ // Example: 'com.companyname.appname'
+ AllowedPackageNames []string `protobuf:"bytes,1,rep,name=allowed_package_names,json=allowedPackageNames,proto3" json:"allowed_package_names,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AndroidKeySettings) Reset() { *m = AndroidKeySettings{} }
+func (m *AndroidKeySettings) String() string { return proto.CompactTextString(m) }
+func (*AndroidKeySettings) ProtoMessage() {}
+func (*AndroidKeySettings) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{15}
+}
+
+func (m *AndroidKeySettings) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AndroidKeySettings.Unmarshal(m, b)
+}
+func (m *AndroidKeySettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AndroidKeySettings.Marshal(b, m, deterministic)
+}
+func (m *AndroidKeySettings) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AndroidKeySettings.Merge(m, src)
+}
+func (m *AndroidKeySettings) XXX_Size() int {
+ return xxx_messageInfo_AndroidKeySettings.Size(m)
+}
+func (m *AndroidKeySettings) XXX_DiscardUnknown() {
+ xxx_messageInfo_AndroidKeySettings.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AndroidKeySettings proto.InternalMessageInfo
+
+func (m *AndroidKeySettings) GetAllowedPackageNames() []string {
+ if m != nil {
+ return m.AllowedPackageNames
+ }
+ return nil
+}
+
+// Settings specific to keys that can be used by iOS apps.
+type IOSKeySettings struct {
+ // iOS bundle ids of apps allowed to use the key.
+ // Example: 'com.companyname.productname.appname'
+ AllowedBundleIds []string `protobuf:"bytes,1,rep,name=allowed_bundle_ids,json=allowedBundleIds,proto3" json:"allowed_bundle_ids,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *IOSKeySettings) Reset() { *m = IOSKeySettings{} }
+func (m *IOSKeySettings) String() string { return proto.CompactTextString(m) }
+func (*IOSKeySettings) ProtoMessage() {}
+func (*IOSKeySettings) Descriptor() ([]byte, []int) {
+ return fileDescriptor_f777376f650e105f, []int{16}
+}
+
+func (m *IOSKeySettings) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_IOSKeySettings.Unmarshal(m, b)
+}
+func (m *IOSKeySettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_IOSKeySettings.Marshal(b, m, deterministic)
+}
+func (m *IOSKeySettings) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_IOSKeySettings.Merge(m, src)
+}
+func (m *IOSKeySettings) XXX_Size() int {
+ return xxx_messageInfo_IOSKeySettings.Size(m)
+}
+func (m *IOSKeySettings) XXX_DiscardUnknown() {
+ xxx_messageInfo_IOSKeySettings.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_IOSKeySettings proto.InternalMessageInfo
+
+func (m *IOSKeySettings) GetAllowedBundleIds() []string {
+ if m != nil {
+ return m.AllowedBundleIds
+ }
+ return nil
+}
+
+func init() {
+ proto.RegisterEnum("google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest_Annotation", AnnotateAssessmentRequest_Annotation_name, AnnotateAssessmentRequest_Annotation_value)
+ proto.RegisterEnum("google.cloud.recaptchaenterprise.v1.RiskAnalysis_ClassificationReason", RiskAnalysis_ClassificationReason_name, RiskAnalysis_ClassificationReason_value)
+ proto.RegisterEnum("google.cloud.recaptchaenterprise.v1.TokenProperties_InvalidReason", TokenProperties_InvalidReason_name, TokenProperties_InvalidReason_value)
+ proto.RegisterEnum("google.cloud.recaptchaenterprise.v1.WebKeySettings_IntegrationType", WebKeySettings_IntegrationType_name, WebKeySettings_IntegrationType_value)
+ proto.RegisterEnum("google.cloud.recaptchaenterprise.v1.WebKeySettings_ChallengeSecurityPreference", WebKeySettings_ChallengeSecurityPreference_name, WebKeySettings_ChallengeSecurityPreference_value)
+ proto.RegisterType((*CreateAssessmentRequest)(nil), "google.cloud.recaptchaenterprise.v1.CreateAssessmentRequest")
+ proto.RegisterType((*AnnotateAssessmentRequest)(nil), "google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest")
+ proto.RegisterType((*AnnotateAssessmentResponse)(nil), "google.cloud.recaptchaenterprise.v1.AnnotateAssessmentResponse")
+ proto.RegisterType((*Assessment)(nil), "google.cloud.recaptchaenterprise.v1.Assessment")
+ proto.RegisterType((*Event)(nil), "google.cloud.recaptchaenterprise.v1.Event")
+ proto.RegisterType((*RiskAnalysis)(nil), "google.cloud.recaptchaenterprise.v1.RiskAnalysis")
+ proto.RegisterType((*TokenProperties)(nil), "google.cloud.recaptchaenterprise.v1.TokenProperties")
+ proto.RegisterType((*CreateKeyRequest)(nil), "google.cloud.recaptchaenterprise.v1.CreateKeyRequest")
+ proto.RegisterType((*ListKeysRequest)(nil), "google.cloud.recaptchaenterprise.v1.ListKeysRequest")
+ proto.RegisterType((*ListKeysResponse)(nil), "google.cloud.recaptchaenterprise.v1.ListKeysResponse")
+ proto.RegisterType((*GetKeyRequest)(nil), "google.cloud.recaptchaenterprise.v1.GetKeyRequest")
+ proto.RegisterType((*UpdateKeyRequest)(nil), "google.cloud.recaptchaenterprise.v1.UpdateKeyRequest")
+ proto.RegisterType((*DeleteKeyRequest)(nil), "google.cloud.recaptchaenterprise.v1.DeleteKeyRequest")
+ proto.RegisterType((*Key)(nil), "google.cloud.recaptchaenterprise.v1.Key")
+ proto.RegisterMapType((map[string]string)(nil), "google.cloud.recaptchaenterprise.v1.Key.LabelsEntry")
+ proto.RegisterType((*WebKeySettings)(nil), "google.cloud.recaptchaenterprise.v1.WebKeySettings")
+ proto.RegisterType((*AndroidKeySettings)(nil), "google.cloud.recaptchaenterprise.v1.AndroidKeySettings")
+ proto.RegisterType((*IOSKeySettings)(nil), "google.cloud.recaptchaenterprise.v1.IOSKeySettings")
+}
+
+func init() {
+ proto.RegisterFile("google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto", fileDescriptor_f777376f650e105f)
+}
+
+var fileDescriptor_f777376f650e105f = []byte{
+ // 2117 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0xcd, 0x73, 0xdb, 0xc6,
+ 0x15, 0x0f, 0x48, 0x51, 0x16, 0x9f, 0xbe, 0x90, 0x8d, 0x6b, 0xcb, 0xf4, 0x47, 0x65, 0xb8, 0x4d,
+ 0x1c, 0xc5, 0x26, 0x47, 0x72, 0x3c, 0x6d, 0x95, 0x4f, 0x10, 0x84, 0x64, 0x54, 0x14, 0xc8, 0x02,
+ 0xa0, 0x6c, 0x37, 0x9e, 0x41, 0x21, 0x70, 0x45, 0xa1, 0x02, 0x01, 0x14, 0x0b, 0x49, 0x66, 0x3c,
+ 0xee, 0x74, 0xd2, 0x63, 0x7b, 0x6a, 0xa6, 0xd3, 0x43, 0xa7, 0x33, 0x9d, 0x4e, 0x4f, 0xfd, 0x0b,
+ 0x7a, 0xe8, 0x25, 0xd7, 0x1c, 0x72, 0x68, 0x6f, 0x39, 0xf9, 0xd0, 0x93, 0xff, 0x80, 0x1e, 0x7a,
+ 0xea, 0x60, 0x17, 0x00, 0x3f, 0x4c, 0xbb, 0xa4, 0xda, 0xdc, 0xb8, 0xef, 0xf3, 0xb7, 0xef, 0xbd,
+ 0x7d, 0xef, 0x81, 0xf0, 0x41, 0xc7, 0xf7, 0x3b, 0x2e, 0xae, 0xd8, 0xae, 0x7f, 0xdc, 0xae, 0x84,
+ 0xd8, 0xb6, 0x82, 0xc8, 0x3e, 0xb4, 0xb0, 0x17, 0xe1, 0x30, 0x08, 0x1d, 0x82, 0x2b, 0x27, 0xeb,
+ 0xe3, 0xc8, 0xe5, 0x20, 0xf4, 0x23, 0x1f, 0xdd, 0x60, 0xea, 0x65, 0xaa, 0x5e, 0x1e, 0x27, 0x77,
+ 0xb2, 0x5e, 0xba, 0x92, 0xf8, 0xb0, 0x02, 0xa7, 0x62, 0x79, 0x9e, 0x1f, 0x59, 0x91, 0xe3, 0x7b,
+ 0x84, 0x99, 0x28, 0x5d, 0x1c, 0xe0, 0xda, 0xae, 0x83, 0xbd, 0x28, 0x61, 0x7c, 0x7b, 0x80, 0x71,
+ 0xe0, 0x60, 0xb7, 0x6d, 0xee, 0xe3, 0x43, 0xeb, 0xc4, 0xf1, 0xc3, 0x44, 0xe0, 0xd2, 0x80, 0x40,
+ 0x88, 0x89, 0x7f, 0x1c, 0xda, 0x09, 0xae, 0xd2, 0xe5, 0x84, 0x45, 0x4f, 0xfb, 0xc7, 0x07, 0x15,
+ 0xdc, 0x0d, 0xa2, 0x5e, 0xc2, 0x5c, 0x1d, 0x65, 0x32, 0xeb, 0x5d, 0x8b, 0x1c, 0x8d, 0xb8, 0xce,
+ 0x24, 0x22, 0xa7, 0x8b, 0x49, 0x64, 0x75, 0x03, 0x26, 0x20, 0xfc, 0x8d, 0x83, 0x8b, 0x52, 0x88,
+ 0xad, 0x08, 0x8b, 0x84, 0x60, 0x42, 0xba, 0xd8, 0x8b, 0x34, 0xfc, 0xb3, 0x63, 0x4c, 0x22, 0xb4,
+ 0x03, 0xb3, 0x81, 0x15, 0x62, 0x2f, 0x5a, 0xe1, 0x56, 0xb9, 0x9b, 0xc5, 0xea, 0x9d, 0x67, 0x62,
+ 0xee, 0xdf, 0xe2, 0x6d, 0x78, 0x87, 0x06, 0x29, 0x05, 0xda, 0xb5, 0x3c, 0xab, 0x83, 0xc3, 0x32,
+ 0xf3, 0x64, 0x05, 0x0e, 0x29, 0xdb, 0x7e, 0xb7, 0xd2, 0x0c, 0xfd, 0x9f, 0x62, 0x3b, 0xd2, 0x12,
+ 0x13, 0xc8, 0x00, 0xb0, 0x32, 0x0f, 0x2b, 0xb9, 0x55, 0xee, 0xe6, 0xfc, 0x46, 0xa5, 0x3c, 0x41,
+ 0xd4, 0xcb, 0x7d, 0x60, 0xd5, 0xfc, 0x33, 0x31, 0xa7, 0x0d, 0xd8, 0x11, 0xbe, 0xca, 0xc1, 0x25,
+ 0x91, 0x65, 0x62, 0xcc, 0x05, 0x14, 0x98, 0xf1, 0xac, 0x2e, 0x4e, 0xe0, 0xdf, 0xa5, 0xf0, 0x2b,
+ 0x70, 0x7b, 0x9c, 0x9f, 0x11, 0xf4, 0x03, 0xb6, 0xa8, 0x09, 0xe4, 0x01, 0xf4, 0x33, 0x4e, 0xe1,
+ 0x2f, 0x6d, 0x28, 0x93, 0xc1, 0x7f, 0x19, 0xbc, 0x94, 0xe3, 0xf8, 0x5e, 0x7a, 0xb1, 0x8c, 0x20,
+ 0x9c, 0x00, 0xf4, 0xd9, 0xa8, 0x04, 0x17, 0x44, 0x55, 0x6d, 0x18, 0xa2, 0xa1, 0x34, 0x54, 0xb3,
+ 0xa5, 0xea, 0x4d, 0x59, 0x52, 0xb6, 0x14, 0xb9, 0xc6, 0xbf, 0x86, 0x96, 0x00, 0xea, 0xf2, 0xb6,
+ 0x62, 0x28, 0xbb, 0xa2, 0x21, 0xf3, 0x5c, 0x7c, 0xde, 0xd2, 0xc4, 0x56, 0xad, 0x55, 0x97, 0x55,
+ 0x83, 0xcf, 0xa1, 0xf3, 0xc0, 0x37, 0x45, 0x5d, 0xbf, 0xdf, 0xd0, 0x6a, 0xa6, 0xd4, 0xd0, 0x34,
+ 0x59, 0x32, 0xf8, 0x3c, 0xba, 0x00, 0x28, 0xa3, 0x2a, 0x6a, 0x4a, 0x9f, 0x11, 0xae, 0x40, 0x69,
+ 0x1c, 0x60, 0x12, 0xf8, 0x1e, 0xc1, 0xc2, 0xaf, 0xf2, 0x00, 0x7d, 0x32, 0xba, 0x38, 0x14, 0xdf,
+ 0xfc, 0x33, 0x31, 0x9f, 0x44, 0xeb, 0x63, 0x28, 0xe0, 0x93, 0x7e, 0x9e, 0xd7, 0x26, 0x0a, 0x94,
+ 0x1c, 0x6b, 0x68, 0x4c, 0x11, 0x7d, 0x02, 0x8b, 0xa1, 0x43, 0x8e, 0x4c, 0xcb, 0xb3, 0xdc, 0x1e,
+ 0x71, 0xc8, 0x4a, 0x9e, 0x5a, 0x5a, 0x9f, 0xc8, 0x92, 0xe6, 0x90, 0x23, 0x31, 0x51, 0x64, 0xb0,
+ 0x16, 0xc2, 0x01, 0x12, 0x6a, 0x03, 0x1f, 0xf9, 0x47, 0xd8, 0x33, 0x83, 0xd0, 0x0f, 0x70, 0x18,
+ 0x39, 0x98, 0xac, 0xcc, 0x50, 0xfb, 0xef, 0x4e, 0x64, 0xdf, 0x88, 0x95, 0x9b, 0x99, 0x2e, 0x73,
+ 0xb1, 0x1c, 0x0d, 0x53, 0x37, 0xcd, 0xe7, 0xe2, 0xa3, 0x29, 0x8b, 0x0d, 0xbd, 0x13, 0xb0, 0x67,
+ 0x43, 0x2a, 0x4f, 0x92, 0x5f, 0x4f, 0x2b, 0xfd, 0x72, 0x27, 0x95, 0x27, 0xfd, 0xc3, 0x53, 0xe1,
+ 0x0b, 0x0e, 0x0a, 0x34, 0x68, 0xe8, 0x12, 0x14, 0xa8, 0xf7, 0x7e, 0x26, 0x38, 0x8d, 0x51, 0xd0,
+ 0x35, 0x98, 0x23, 0x4e, 0x84, 0xcd, 0x23, 0xdc, 0xa3, 0xd9, 0x48, 0xb8, 0xe7, 0x62, 0xe2, 0x0e,
+ 0xee, 0x21, 0x01, 0xe0, 0x98, 0xe0, 0xd0, 0xb4, 0x3a, 0x71, 0xbe, 0xf2, 0x7d, 0x89, 0x62, 0x4c,
+ 0x16, 0x3b, 0x14, 0x15, 0x2c, 0x53, 0x19, 0x27, 0x30, 0xad, 0x76, 0xfc, 0xf0, 0x59, 0xb8, 0x12,
+ 0xc1, 0xc5, 0x98, 0xa7, 0x04, 0x22, 0xe3, 0xa0, 0x5b, 0xb0, 0x8c, 0x1f, 0x07, 0xd8, 0x8e, 0x70,
+ 0xdb, 0xb4, 0x6c, 0xfa, 0x5c, 0x0a, 0x7d, 0xe1, 0xa5, 0x94, 0x27, 0x52, 0x96, 0xf0, 0x45, 0x0e,
+ 0x16, 0x06, 0xd3, 0x85, 0xce, 0x43, 0x81, 0xd8, 0x7e, 0xc8, 0x8a, 0x2a, 0xa7, 0xb1, 0x03, 0xfa,
+ 0x09, 0x9c, 0x0b, 0xb1, 0x45, 0x7c, 0x8f, 0xac, 0xe4, 0x56, 0xf3, 0x37, 0x97, 0x36, 0xb6, 0xa6,
+ 0x2e, 0x84, 0xb2, 0xe4, 0x5a, 0x84, 0x38, 0x07, 0x8e, 0x4d, 0xdf, 0x94, 0x46, 0xcd, 0x69, 0xa9,
+ 0x59, 0xe1, 0xaf, 0x1c, 0x9c, 0x1f, 0x27, 0x81, 0xbe, 0x0b, 0xd7, 0xa5, 0xba, 0xa8, 0xeb, 0xca,
+ 0x96, 0x22, 0xb1, 0xf7, 0xa7, 0xc9, 0xa2, 0x3e, 0xee, 0x19, 0x8a, 0x2d, 0xa3, 0xb1, 0x4b, 0x45,
+ 0x78, 0x2e, 0x7e, 0xb2, 0x2d, 0x55, 0x7e, 0xd0, 0x94, 0x25, 0x43, 0xae, 0x99, 0xb2, 0xba, 0xa7,
+ 0x68, 0x0d, 0x75, 0x37, 0x7b, 0x92, 0x46, 0xa3, 0x61, 0xee, 0xb6, 0xa4, 0x7b, 0xa6, 0xa1, 0x89,
+ 0x5b, 0x5b, 0x8a, 0xc4, 0xe7, 0xd1, 0x55, 0xb8, 0x34, 0xa0, 0xd1, 0xd2, 0xc5, 0x6d, 0xd9, 0x6c,
+ 0x8a, 0x86, 0x21, 0x6b, 0xaa, 0xce, 0xcf, 0xa0, 0x15, 0x38, 0x5f, 0x6f, 0xdc, 0x37, 0xa5, 0x86,
+ 0xba, 0xa5, 0xd4, 0x64, 0x55, 0x92, 0x4d, 0x5d, 0x6a, 0x68, 0x32, 0x5f, 0x10, 0x7e, 0x99, 0x87,
+ 0xe5, 0x91, 0x92, 0x8c, 0xc3, 0x78, 0x62, 0xb9, 0x4e, 0x9b, 0x86, 0x71, 0x4e, 0x63, 0x07, 0xe4,
+ 0xc0, 0x92, 0xe3, 0xd1, 0x9f, 0x26, 0xbb, 0x77, 0xd2, 0xc9, 0xaa, 0x67, 0x29, 0xfb, 0xb2, 0xc2,
+ 0x4c, 0x25, 0x91, 0x5c, 0x74, 0x06, 0x8f, 0xe8, 0x3d, 0x98, 0xb7, 0xe9, 0x5c, 0x31, 0xe3, 0x91,
+ 0x93, 0x3c, 0xdf, 0x52, 0xea, 0x27, 0x9d, 0x47, 0x65, 0x23, 0x9d, 0x47, 0x1a, 0x30, 0xf1, 0x98,
+ 0x80, 0x4a, 0x30, 0x77, 0xe8, 0x93, 0x88, 0x36, 0x17, 0x5a, 0x69, 0x5a, 0x76, 0x46, 0x17, 0x60,
+ 0x76, 0xb0, 0xac, 0xb4, 0xe4, 0x24, 0xfc, 0x1c, 0x16, 0x87, 0x00, 0xa1, 0x6b, 0x50, 0x52, 0xd4,
+ 0x3d, 0xb1, 0xae, 0xd4, 0xc6, 0x67, 0x8c, 0x66, 0x68, 0x47, 0x6d, 0xdc, 0x57, 0xcd, 0x61, 0x39,
+ 0x9e, 0x43, 0x8b, 0x50, 0xdc, 0x15, 0xeb, 0x5b, 0x0d, 0x6d, 0x57, 0xae, 0xf1, 0x39, 0x34, 0x0f,
+ 0xe7, 0xe4, 0x07, 0x4d, 0x45, 0x93, 0x6b, 0x7c, 0x1e, 0xcd, 0xc1, 0x4c, 0xad, 0xd5, 0x94, 0xf9,
+ 0x99, 0x98, 0xbc, 0xab, 0xe8, 0xba, 0xa2, 0x6e, 0xf3, 0x05, 0xe1, 0x8f, 0x1c, 0xf0, 0x6c, 0x92,
+ 0xee, 0xe0, 0xde, 0x37, 0x32, 0x42, 0x3f, 0x82, 0x7c, 0xfa, 0x8a, 0xe7, 0x37, 0x6e, 0x4e, 0x94,
+ 0xb2, 0x1d, 0xdc, 0x63, 0xb3, 0x25, 0xd6, 0x14, 0xfe, 0xcc, 0xc1, 0x72, 0xdd, 0x21, 0xd1, 0x0e,
+ 0xee, 0x91, 0x6f, 0x04, 0xe1, 0x2a, 0x14, 0x03, 0xab, 0x83, 0x4d, 0xe2, 0x7c, 0x8a, 0x29, 0xce,
+ 0x02, 0x7b, 0xf5, 0x73, 0x31, 0x55, 0x77, 0x3e, 0xc5, 0x71, 0xbb, 0xa1, 0x12, 0xac, 0x5d, 0x0d,
+ 0xb6, 0x9b, 0x98, 0x4c, 0x2b, 0x4c, 0x78, 0x0c, 0x7c, 0x1f, 0x25, 0x9b, 0x3c, 0xe8, 0x7d, 0x98,
+ 0x39, 0xc2, 0x3d, 0xb2, 0xc2, 0xad, 0xe6, 0xa7, 0xb9, 0xbc, 0x46, 0xb5, 0xd0, 0x9b, 0xb0, 0xec,
+ 0xe1, 0xc7, 0x91, 0x39, 0xe0, 0x9a, 0xf6, 0x42, 0x6d, 0x31, 0x26, 0x37, 0x33, 0xcf, 0x3a, 0x2c,
+ 0x6e, 0xe3, 0x68, 0x20, 0x7f, 0xd5, 0xa1, 0x09, 0x57, 0xa6, 0xb1, 0xb9, 0x09, 0x6f, 0x4e, 0xd0,
+ 0xd4, 0xa9, 0xf3, 0x58, 0x57, 0xf8, 0x2d, 0x07, 0x7c, 0x2b, 0x68, 0x0f, 0x17, 0x46, 0x92, 0x4b,
+ 0xee, 0xac, 0xb9, 0x44, 0x1f, 0xc3, 0xfc, 0x31, 0x35, 0x4a, 0xd7, 0xbd, 0xa4, 0x28, 0x5e, 0x7c,
+ 0x5f, 0x5b, 0xf1, 0x46, 0xb8, 0x6b, 0x91, 0x23, 0x16, 0x65, 0x60, 0x3a, 0x31, 0x41, 0xd8, 0x03,
+ 0xbe, 0x86, 0x5d, 0x3c, 0x04, 0xeb, 0xff, 0x71, 0xdf, 0xcf, 0x0a, 0x90, 0x8f, 0x27, 0x0b, 0x1a,
+ 0xb4, 0x95, 0x2c, 0x06, 0xd7, 0x61, 0xa1, 0xed, 0x90, 0xc0, 0xb5, 0x7a, 0x26, 0xe5, 0xb1, 0x2c,
+ 0xcc, 0x27, 0x34, 0x35, 0x16, 0x79, 0x00, 0x0b, 0xa7, 0x78, 0xdf, 0x24, 0x38, 0x8a, 0x1c, 0xaf,
+ 0x93, 0x0e, 0xfe, 0x3b, 0x13, 0x85, 0xe8, 0x3e, 0xde, 0xdf, 0xc1, 0x3d, 0x3d, 0x51, 0xbd, 0xf7,
+ 0x9a, 0x36, 0x7f, 0x8a, 0xf7, 0xd3, 0x63, 0x3c, 0xf6, 0x2d, 0xaf, 0x1d, 0xfa, 0x4e, 0xbb, 0x6f,
+ 0x9d, 0x8d, 0xfd, 0xef, 0x4d, 0xb8, 0xc9, 0x51, 0xe5, 0x61, 0x0f, 0xcb, 0x89, 0xc9, 0xcc, 0xcb,
+ 0x03, 0x58, 0x70, 0x7c, 0xd2, 0xf7, 0x50, 0x98, 0x02, 0xbf, 0xd2, 0xd0, 0x47, 0xf0, 0x3b, 0x3e,
+ 0xc9, 0x2c, 0xff, 0x08, 0x66, 0x5d, 0x6b, 0x1f, 0xbb, 0x64, 0x65, 0x96, 0xbe, 0x82, 0x77, 0x27,
+ 0x2d, 0x9b, 0x72, 0x9d, 0xaa, 0xc9, 0x5e, 0x14, 0xf6, 0x58, 0x1d, 0x24, 0x86, 0x46, 0xbb, 0xf4,
+ 0xb9, 0x69, 0xba, 0x74, 0xe9, 0x07, 0x30, 0x3f, 0x60, 0x18, 0xf1, 0xfd, 0x92, 0x2e, 0xb2, 0x1a,
+ 0x65, 0x43, 0xe8, 0x38, 0x4d, 0x33, 0x3b, 0x6c, 0xe6, 0xbe, 0xcf, 0x6d, 0xfe, 0xf0, 0xb9, 0xb8,
+ 0x3d, 0x69, 0x59, 0xa1, 0xab, 0x63, 0x96, 0xa2, 0xf8, 0x59, 0x57, 0x9e, 0x1c, 0xe1, 0xde, 0xd3,
+ 0xea, 0x1b, 0xf0, 0x7a, 0xe0, 0x5a, 0xd1, 0x81, 0x1f, 0x76, 0xb3, 0xa8, 0x0b, 0xff, 0x9a, 0x81,
+ 0xa5, 0xe1, 0x6a, 0x40, 0x6b, 0xf0, 0xba, 0xe5, 0xba, 0xfe, 0xa9, 0x69, 0xb9, 0xae, 0xd9, 0xf6,
+ 0xbb, 0x96, 0xe3, 0xb1, 0xea, 0x9a, 0xd3, 0x96, 0x29, 0x43, 0x74, 0xdd, 0x1a, 0x23, 0xa3, 0xb7,
+ 0x80, 0x91, 0x70, 0x3b, 0x93, 0x8c, 0x3b, 0x4f, 0x51, 0x5b, 0x4a, 0xc8, 0xa9, 0x60, 0x25, 0x33,
+ 0xda, 0x0d, 0xcc, 0x28, 0xb4, 0x0e, 0x0e, 0x1c, 0x9b, 0x5e, 0x77, 0x8e, 0xbd, 0xd5, 0xc4, 0x72,
+ 0x37, 0x30, 0x18, 0x0f, 0x11, 0xe0, 0x1d, 0x2f, 0xc2, 0x9d, 0x90, 0xee, 0x18, 0x66, 0xd4, 0x0b,
+ 0xd8, 0x88, 0x5b, 0xda, 0x90, 0xce, 0x50, 0xe2, 0x65, 0xa5, 0x6f, 0xcb, 0xe8, 0x05, 0x38, 0x71,
+ 0xea, 0x0c, 0x53, 0xd1, 0xe7, 0x1c, 0x5c, 0xb5, 0x0f, 0x2d, 0xd7, 0xc5, 0x5e, 0xdc, 0x9d, 0xb1,
+ 0x7d, 0x1c, 0x3a, 0x51, 0xcf, 0x0c, 0x42, 0x7c, 0x80, 0x43, 0xec, 0xd9, 0x98, 0x56, 0xe9, 0xd2,
+ 0x46, 0xe3, 0x2c, 0x10, 0xa4, 0xd4, 0xb0, 0x9e, 0xd8, 0x6d, 0x66, 0x66, 0xb5, 0xcb, 0xf6, 0xcb,
+ 0x99, 0xc2, 0x27, 0xb0, 0x3c, 0x02, 0x1f, 0xad, 0xc2, 0x15, 0x45, 0x35, 0xe4, 0x6d, 0x8d, 0x6d,
+ 0x5a, 0xc6, 0xc3, 0xa6, 0x3c, 0x32, 0xb5, 0x8b, 0x50, 0x60, 0x7b, 0x0f, 0x87, 0x16, 0x60, 0x4e,
+ 0xba, 0x27, 0x4b, 0x3b, 0xd5, 0xc6, 0x03, 0x3e, 0x17, 0x8f, 0x6c, 0x45, 0xdd, 0x53, 0x74, 0xa5,
+ 0x5a, 0x97, 0xf9, 0xbc, 0x70, 0x02, 0x97, 0x5f, 0x01, 0x0c, 0xdd, 0x86, 0xb7, 0xa5, 0x7b, 0x62,
+ 0xbd, 0x2e, 0xab, 0xdb, 0xb2, 0xa9, 0xcb, 0x52, 0x4b, 0x53, 0x8c, 0x87, 0x66, 0x53, 0x93, 0xb7,
+ 0x64, 0x8d, 0x2e, 0x57, 0xc3, 0x5e, 0x17, 0xa1, 0xd8, 0xd2, 0xc5, 0xaa, 0x52, 0x57, 0x8c, 0x87,
+ 0x3c, 0x17, 0x0f, 0xfe, 0xaa, 0x58, 0x17, 0x55, 0x49, 0xe6, 0x73, 0x31, 0x8c, 0xd4, 0x00, 0x9f,
+ 0x17, 0xee, 0x01, 0x7a, 0xb1, 0x4f, 0xa0, 0x0d, 0xf8, 0x56, 0x5a, 0x4f, 0x81, 0x65, 0x1f, 0xc5,
+ 0x63, 0x28, 0xee, 0x7f, 0x69, 0x55, 0xbd, 0x91, 0x30, 0x9b, 0x8c, 0x17, 0xf7, 0x41, 0x22, 0x7c,
+ 0x08, 0x4b, 0xc3, 0xfd, 0x00, 0xdd, 0x02, 0x94, 0x5a, 0xd9, 0x3f, 0xf6, 0xda, 0x2e, 0x36, 0x9d,
+ 0x76, 0x6a, 0x82, 0x4f, 0x38, 0x55, 0xca, 0x50, 0xda, 0x64, 0xe3, 0x37, 0x00, 0x25, 0x2d, 0xcd,
+ 0xa0, 0x9c, 0x65, 0x50, 0xc7, 0xe1, 0x89, 0x63, 0x63, 0xf4, 0x55, 0xb6, 0xaf, 0x0c, 0x7c, 0x7f,
+ 0xbc, 0x3f, 0x51, 0x01, 0xbc, 0xe4, 0x0f, 0x83, 0xd2, 0xb4, 0xdf, 0xf3, 0xc2, 0xce, 0xd7, 0xe2,
+ 0xeb, 0x6c, 0x75, 0xb8, 0xd5, 0xff, 0xb0, 0xf9, 0xec, 0x1f, 0xff, 0xfc, 0x3c, 0xb7, 0x2e, 0xdc,
+ 0xa8, 0x9c, 0xac, 0x57, 0x9e, 0x30, 0xee, 0x07, 0x59, 0x07, 0x58, 0x1b, 0xfa, 0x1e, 0xda, 0x1c,
+ 0xf8, 0x2f, 0x00, 0x3d, 0xe3, 0xe2, 0xd0, 0x8f, 0x7e, 0xbb, 0xa2, 0x0f, 0xff, 0xb7, 0xaf, 0xf4,
+ 0xd2, 0x47, 0x67, 0xd6, 0x4f, 0x3e, 0x9a, 0x95, 0xaf, 0xc5, 0xe5, 0x38, 0xd9, 0xb7, 0xfa, 0x9f,
+ 0xf7, 0xc9, 0x15, 0x6f, 0xd1, 0x2b, 0xc6, 0xbc, 0x81, 0x0b, 0x0e, 0x7d, 0xef, 0xad, 0x3d, 0xdd,
+ 0x4c, 0xb4, 0xf0, 0x26, 0xb7, 0x86, 0x7e, 0xc7, 0x41, 0x31, 0xdb, 0x31, 0xd1, 0xdd, 0x29, 0x92,
+ 0xd5, 0x9f, 0xf1, 0xa5, 0x89, 0xb7, 0x0d, 0xe1, 0x6d, 0x8a, 0xf3, 0x86, 0x70, 0xe5, 0x65, 0xa9,
+ 0x88, 0xbb, 0xf0, 0x26, 0x6d, 0xf5, 0x7f, 0xe0, 0x60, 0x2e, 0x5d, 0xda, 0xd0, 0x64, 0x83, 0x69,
+ 0x64, 0x13, 0x2d, 0xdd, 0x9d, 0x52, 0x2b, 0x09, 0xef, 0x77, 0x28, 0xc8, 0x6b, 0xe8, 0x95, 0x20,
+ 0xd1, 0xaf, 0x39, 0x98, 0x65, 0xab, 0x1d, 0xda, 0x98, 0xc8, 0xcf, 0xd0, 0x1e, 0x38, 0x45, 0xcc,
+ 0x86, 0xe1, 0x8c, 0xe6, 0x96, 0x8e, 0xad, 0xb5, 0xa7, 0xe8, 0xf7, 0x1c, 0x14, 0xb3, 0x9d, 0x70,
+ 0xc2, 0x44, 0x8e, 0xee, 0x90, 0x53, 0x80, 0xba, 0x4d, 0x41, 0xbd, 0xb5, 0xb1, 0x4a, 0x41, 0x1d,
+ 0xe1, 0x5e, 0xf9, 0x25, 0xc0, 0x58, 0x32, 0x7f, 0xc1, 0x41, 0x31, 0x5b, 0x0d, 0x27, 0x44, 0x37,
+ 0xba, 0x4a, 0x96, 0x2e, 0xbc, 0xb0, 0x45, 0xc8, 0xdd, 0x20, 0xca, 0x02, 0xb4, 0xf6, 0xca, 0x00,
+ 0x95, 0xf6, 0xbe, 0x14, 0x85, 0xff, 0xbe, 0x1e, 0xfc, 0x5d, 0x2c, 0x1f, 0x46, 0x51, 0x40, 0x36,
+ 0x2b, 0x95, 0xd3, 0xd3, 0xd3, 0xd1, 0xdd, 0xc1, 0x3a, 0x8e, 0x0e, 0xd9, 0xff, 0xc1, 0xb7, 0xd3,
+ 0x05, 0xa1, 0xfa, 0x9c, 0x83, 0xeb, 0xb6, 0xdf, 0x4d, 0xb1, 0x8d, 0xbf, 0x4c, 0x75, 0x65, 0x4c,
+ 0xdf, 0x6c, 0xc6, 0xd7, 0x68, 0x72, 0x3f, 0xde, 0x4b, 0x54, 0x3b, 0xbe, 0x6b, 0x79, 0x9d, 0xb2,
+ 0x1f, 0x76, 0x2a, 0x1d, 0xec, 0xd1, 0x4b, 0x56, 0xfa, 0x00, 0x5e, 0xf9, 0x3f, 0xf4, 0x7b, 0x63,
+ 0xc8, 0x7f, 0xca, 0xcd, 0x6c, 0x4b, 0x9a, 0xfc, 0x97, 0xdc, 0x8d, 0x6d, 0x66, 0x5f, 0xa2, 0xd1,
+ 0x1e, 0x03, 0xa4, 0xbc, 0xb7, 0xfe, 0x65, 0x2a, 0xf5, 0x88, 0x4a, 0x3d, 0x1a, 0x23, 0xf5, 0x68,
+ 0x6f, 0x7d, 0x7f, 0x96, 0xa2, 0xba, 0xf3, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x39, 0x08, 0xf0,
+ 0x01, 0x1c, 0x17, 0x00, 0x00,
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// RecaptchaEnterpriseServiceClient is the client API for RecaptchaEnterpriseService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type RecaptchaEnterpriseServiceClient interface {
+ // Creates an Assessment of the likelihood an event is legitimate.
+ CreateAssessment(ctx context.Context, in *CreateAssessmentRequest, opts ...grpc.CallOption) (*Assessment, error)
+ // Annotates a previously created Assessment to provide additional information
+ // on whether the event turned out to be authentic or fradulent.
+ AnnotateAssessment(ctx context.Context, in *AnnotateAssessmentRequest, opts ...grpc.CallOption) (*AnnotateAssessmentResponse, error)
+ // Creates a new reCAPTCHA Enterprise key.
+ CreateKey(ctx context.Context, in *CreateKeyRequest, opts ...grpc.CallOption) (*Key, error)
+ // Returns the list of all keys that belong to a project.
+ ListKeys(ctx context.Context, in *ListKeysRequest, opts ...grpc.CallOption) (*ListKeysResponse, error)
+ // Returns the specified key.
+ GetKey(ctx context.Context, in *GetKeyRequest, opts ...grpc.CallOption) (*Key, error)
+ // Updates the specified key.
+ UpdateKey(ctx context.Context, in *UpdateKeyRequest, opts ...grpc.CallOption) (*Key, error)
+ // Deletes the specified key.
+ DeleteKey(ctx context.Context, in *DeleteKeyRequest, opts ...grpc.CallOption) (*empty.Empty, error)
+}
+
+type recaptchaEnterpriseServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewRecaptchaEnterpriseServiceClient(cc grpc.ClientConnInterface) RecaptchaEnterpriseServiceClient {
+ return &recaptchaEnterpriseServiceClient{cc}
+}
+
+func (c *recaptchaEnterpriseServiceClient) CreateAssessment(ctx context.Context, in *CreateAssessmentRequest, opts ...grpc.CallOption) (*Assessment, error) {
+ out := new(Assessment)
+ err := c.cc.Invoke(ctx, "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/CreateAssessment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *recaptchaEnterpriseServiceClient) AnnotateAssessment(ctx context.Context, in *AnnotateAssessmentRequest, opts ...grpc.CallOption) (*AnnotateAssessmentResponse, error) {
+ out := new(AnnotateAssessmentResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/AnnotateAssessment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *recaptchaEnterpriseServiceClient) CreateKey(ctx context.Context, in *CreateKeyRequest, opts ...grpc.CallOption) (*Key, error) {
+ out := new(Key)
+ err := c.cc.Invoke(ctx, "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/CreateKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *recaptchaEnterpriseServiceClient) ListKeys(ctx context.Context, in *ListKeysRequest, opts ...grpc.CallOption) (*ListKeysResponse, error) {
+ out := new(ListKeysResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/ListKeys", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *recaptchaEnterpriseServiceClient) GetKey(ctx context.Context, in *GetKeyRequest, opts ...grpc.CallOption) (*Key, error) {
+ out := new(Key)
+ err := c.cc.Invoke(ctx, "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/GetKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *recaptchaEnterpriseServiceClient) UpdateKey(ctx context.Context, in *UpdateKeyRequest, opts ...grpc.CallOption) (*Key, error) {
+ out := new(Key)
+ err := c.cc.Invoke(ctx, "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/UpdateKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *recaptchaEnterpriseServiceClient) DeleteKey(ctx context.Context, in *DeleteKeyRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/DeleteKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// RecaptchaEnterpriseServiceServer is the server API for RecaptchaEnterpriseService service.
+type RecaptchaEnterpriseServiceServer interface {
+ // Creates an Assessment of the likelihood an event is legitimate.
+ CreateAssessment(context.Context, *CreateAssessmentRequest) (*Assessment, error)
+ // Annotates a previously created Assessment to provide additional information
+ // on whether the event turned out to be authentic or fradulent.
+ AnnotateAssessment(context.Context, *AnnotateAssessmentRequest) (*AnnotateAssessmentResponse, error)
+ // Creates a new reCAPTCHA Enterprise key.
+ CreateKey(context.Context, *CreateKeyRequest) (*Key, error)
+ // Returns the list of all keys that belong to a project.
+ ListKeys(context.Context, *ListKeysRequest) (*ListKeysResponse, error)
+ // Returns the specified key.
+ GetKey(context.Context, *GetKeyRequest) (*Key, error)
+ // Updates the specified key.
+ UpdateKey(context.Context, *UpdateKeyRequest) (*Key, error)
+ // Deletes the specified key.
+ DeleteKey(context.Context, *DeleteKeyRequest) (*empty.Empty, error)
+}
+
+// UnimplementedRecaptchaEnterpriseServiceServer can be embedded to have forward compatible implementations.
+type UnimplementedRecaptchaEnterpriseServiceServer struct {
+}
+
+func (*UnimplementedRecaptchaEnterpriseServiceServer) CreateAssessment(ctx context.Context, req *CreateAssessmentRequest) (*Assessment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateAssessment not implemented")
+}
+func (*UnimplementedRecaptchaEnterpriseServiceServer) AnnotateAssessment(ctx context.Context, req *AnnotateAssessmentRequest) (*AnnotateAssessmentResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method AnnotateAssessment not implemented")
+}
+func (*UnimplementedRecaptchaEnterpriseServiceServer) CreateKey(ctx context.Context, req *CreateKeyRequest) (*Key, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateKey not implemented")
+}
+func (*UnimplementedRecaptchaEnterpriseServiceServer) ListKeys(ctx context.Context, req *ListKeysRequest) (*ListKeysResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListKeys not implemented")
+}
+func (*UnimplementedRecaptchaEnterpriseServiceServer) GetKey(ctx context.Context, req *GetKeyRequest) (*Key, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetKey not implemented")
+}
+func (*UnimplementedRecaptchaEnterpriseServiceServer) UpdateKey(ctx context.Context, req *UpdateKeyRequest) (*Key, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateKey not implemented")
+}
+func (*UnimplementedRecaptchaEnterpriseServiceServer) DeleteKey(ctx context.Context, req *DeleteKeyRequest) (*empty.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteKey not implemented")
+}
+
+func RegisterRecaptchaEnterpriseServiceServer(s *grpc.Server, srv RecaptchaEnterpriseServiceServer) {
+ s.RegisterService(&_RecaptchaEnterpriseService_serviceDesc, srv)
+}
+
+func _RecaptchaEnterpriseService_CreateAssessment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateAssessmentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RecaptchaEnterpriseServiceServer).CreateAssessment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/CreateAssessment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RecaptchaEnterpriseServiceServer).CreateAssessment(ctx, req.(*CreateAssessmentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _RecaptchaEnterpriseService_AnnotateAssessment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AnnotateAssessmentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RecaptchaEnterpriseServiceServer).AnnotateAssessment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/AnnotateAssessment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RecaptchaEnterpriseServiceServer).AnnotateAssessment(ctx, req.(*AnnotateAssessmentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _RecaptchaEnterpriseService_CreateKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RecaptchaEnterpriseServiceServer).CreateKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/CreateKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RecaptchaEnterpriseServiceServer).CreateKey(ctx, req.(*CreateKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _RecaptchaEnterpriseService_ListKeys_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListKeysRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RecaptchaEnterpriseServiceServer).ListKeys(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/ListKeys",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RecaptchaEnterpriseServiceServer).ListKeys(ctx, req.(*ListKeysRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _RecaptchaEnterpriseService_GetKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RecaptchaEnterpriseServiceServer).GetKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/GetKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RecaptchaEnterpriseServiceServer).GetKey(ctx, req.(*GetKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _RecaptchaEnterpriseService_UpdateKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RecaptchaEnterpriseServiceServer).UpdateKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/UpdateKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RecaptchaEnterpriseServiceServer).UpdateKey(ctx, req.(*UpdateKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _RecaptchaEnterpriseService_DeleteKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RecaptchaEnterpriseServiceServer).DeleteKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService/DeleteKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RecaptchaEnterpriseServiceServer).DeleteKey(ctx, req.(*DeleteKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _RecaptchaEnterpriseService_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService",
+ HandlerType: (*RecaptchaEnterpriseServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "CreateAssessment",
+ Handler: _RecaptchaEnterpriseService_CreateAssessment_Handler,
+ },
+ {
+ MethodName: "AnnotateAssessment",
+ Handler: _RecaptchaEnterpriseService_AnnotateAssessment_Handler,
+ },
+ {
+ MethodName: "CreateKey",
+ Handler: _RecaptchaEnterpriseService_CreateKey_Handler,
+ },
+ {
+ MethodName: "ListKeys",
+ Handler: _RecaptchaEnterpriseService_ListKeys_Handler,
+ },
+ {
+ MethodName: "GetKey",
+ Handler: _RecaptchaEnterpriseService_GetKey_Handler,
+ },
+ {
+ MethodName: "UpdateKey",
+ Handler: _RecaptchaEnterpriseService_UpdateKey_Handler,
+ },
+ {
+ MethodName: "DeleteKey",
+ Handler: _RecaptchaEnterpriseService_DeleteKey_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto",
+}
diff --git a/googleapis/privacy/dlp/v2/dlp.pb.go b/googleapis/privacy/dlp/v2/dlp.pb.go
index b1f8b2f599..ed986b6972 100644
--- a/googleapis/privacy/dlp/v2/dlp.pb.go
+++ b/googleapis/privacy/dlp/v2/dlp.pb.go
@@ -328,6 +328,7 @@ func (ByteContentItem_BytesType) EnumDescriptor() ([]byte, []int) {
}
// Predefined schemas for storing findings.
+// Only for use with external storage.
type OutputStorageConfig_OutputSchema int32
const (
@@ -369,7 +370,7 @@ func (x OutputStorageConfig_OutputSchema) String() string {
}
func (OutputStorageConfig_OutputSchema) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{27, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{28, 0}
}
// Components that make up time.
@@ -417,7 +418,7 @@ func (x TimePartConfig_TimePart) String() string {
}
func (TimePartConfig_TimePart) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{44, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{47, 0}
}
// Convenience enum for indication common characters to not transform.
@@ -461,7 +462,7 @@ func (x CharsToIgnore_CommonCharsToIgnore) String() string {
}
func (CharsToIgnore_CommonCharsToIgnore) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{50, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{53, 0}
}
// These are commonly used subsets of the alphabet that the FFX mode
@@ -503,7 +504,7 @@ func (x CryptoReplaceFfxFpeConfig_FfxCommonNativeAlphabet) String() string {
}
func (CryptoReplaceFfxFpeConfig_FfxCommonNativeAlphabet) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{54, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{57, 0}
}
// Logical operators for conditional checks.
@@ -531,7 +532,7 @@ func (x RecordCondition_Expressions_LogicalOperator) String() string {
}
func (RecordCondition_Expressions_LogicalOperator) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{64, 2, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{67, 2, 0}
}
// Possible outcomes of transformations.
@@ -563,7 +564,7 @@ func (x TransformationSummary_TransformationResultCode) String() string {
}
func (TransformationSummary_TransformationResultCode) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{66, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{69, 0}
}
// Whether the trigger is currently active. If PAUSED or CANCELLED, no jobs
@@ -602,10 +603,10 @@ func (x JobTrigger_Status) String() string {
}
func (JobTrigger_Status) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{71, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{75, 0}
}
-// Possible states of a job.
+// Possible states of a job. New items may be added.
type DlpJob_JobState int32
const (
@@ -613,7 +614,8 @@ const (
DlpJob_JOB_STATE_UNSPECIFIED DlpJob_JobState = 0
// The job has not yet started.
DlpJob_PENDING DlpJob_JobState = 1
- // The job is currently running.
+ // The job is currently running. Once a job has finished it will transition
+ // to FAILED or DONE.
DlpJob_RUNNING DlpJob_JobState = 2
// The job is no longer running.
DlpJob_DONE DlpJob_JobState = 3
@@ -621,6 +623,11 @@ const (
DlpJob_CANCELED DlpJob_JobState = 4
// The job had an error and did not complete.
DlpJob_FAILED DlpJob_JobState = 5
+ // The job is currently accepting findings via hybridInspect.
+ // A hybrid job in ACTIVE state may continue to have findings added to it
+ // through calling of hybridInspect. After the job has finished no more
+ // calls to hybridInspect may be made. ACTIVE jobs can transition to DONE.
+ DlpJob_ACTIVE DlpJob_JobState = 6
)
var DlpJob_JobState_name = map[int32]string{
@@ -630,6 +637,7 @@ var DlpJob_JobState_name = map[int32]string{
3: "DONE",
4: "CANCELED",
5: "FAILED",
+ 6: "ACTIVE",
}
var DlpJob_JobState_value = map[string]int32{
@@ -639,6 +647,7 @@ var DlpJob_JobState_value = map[string]int32{
"DONE": 3,
"CANCELED": 4,
"FAILED": 5,
+ "ACTIVE": 6,
}
func (x DlpJob_JobState) String() string {
@@ -646,7 +655,7 @@ func (x DlpJob_JobState) String() string {
}
func (DlpJob_JobState) EnumDescriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{88, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{92, 0}
}
// List of exclude infoTypes.
@@ -1066,7 +1075,7 @@ func (m *InspectConfig) GetRuleSet() []*InspectionRuleSet {
// Configuration to control the number of findings returned.
type InspectConfig_FindingLimits struct {
// Max number of findings that will be returned for each item scanned.
- // When set within `InspectDataSourceRequest`,
+ // When set within `InspectJobConfig`,
// the maximum returned is 2000 regardless if this is set higher.
// When set within `InspectContentRequest`, this field is ignored.
MaxFindingsPerItem int32 `protobuf:"varint,1,opt,name=max_findings_per_item,json=maxFindingsPerItem,proto3" json:"max_findings_per_item,omitempty"`
@@ -1481,6 +1490,10 @@ func (m *InspectResult) GetFindingsTruncated() bool {
// Represents a piece of potentially sensitive content.
type Finding struct {
+ // Resource name in format
+ // projects/{project}/locations/{location}/findings/{finding}
+ // Populated only when viewing persisted findings.
+ Name string `protobuf:"bytes,14,opt,name=name,proto3" json:"name,omitempty"`
// The content that was found. Even if the content is not textual, it
// may be converted to a textual representation here.
// Provided if `include_quote` is true and the finding is
@@ -1499,10 +1512,39 @@ type Finding struct {
// Contains data parsed from quotes. Only populated if include_quote was set
// to true and a supported infoType was requested. Currently supported
// infoTypes: DATE, DATE_OF_BIRTH and TIME.
- QuoteInfo *QuoteInfo `protobuf:"bytes,7,opt,name=quote_info,json=quoteInfo,proto3" json:"quote_info,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
+ QuoteInfo *QuoteInfo `protobuf:"bytes,7,opt,name=quote_info,json=quoteInfo,proto3" json:"quote_info,omitempty"`
+ // The job that stored the finding.
+ ResourceName string `protobuf:"bytes,8,opt,name=resource_name,json=resourceName,proto3" json:"resource_name,omitempty"`
+ // Job trigger name, if applicable, for this finding.
+ // (-- api-linter: core::0122::name-suffix=disabled
+ // aip.dev/not-precedent: AIP-122 discourages _name suffixes for
+ // resource names, but this has existed as part of the bigquery schema
+ // before this rule existed. --)
+ TriggerName string `protobuf:"bytes,9,opt,name=trigger_name,json=triggerName,proto3" json:"trigger_name,omitempty"`
+ // The labels associated with this `InspectFinding`.
+ //
+ // Label keys must be between 1 and 63 characters long and must conform
+ // to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
+ //
+ // Label values must be between 0 and 63 characters long and must conform
+ // to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
+ //
+ // No more than 10 labels can be associated with a given finding.
+ //
+ // Example: "environment" : "production"
+ // Example: "pipeline" : "etl"
+ Labels map[string]string `protobuf:"bytes,10,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Time the job started that produced this finding.
+ JobCreateTime *timestamp.Timestamp `protobuf:"bytes,11,opt,name=job_create_time,json=jobCreateTime,proto3" json:"job_create_time,omitempty"`
+ // The job that stored the finding.
+ // (-- api-linter: core::0122::name-suffix=disabled
+ // aip.dev/not-precedent: AIP-122 discourages _name suffixes for
+ // resource names, but this has existed as part of the bigquery schema
+ // before this rule existed. --)
+ JobName string `protobuf:"bytes,13,opt,name=job_name,json=jobName,proto3" json:"job_name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
}
func (m *Finding) Reset() { *m = Finding{} }
@@ -1530,6 +1572,13 @@ func (m *Finding) XXX_DiscardUnknown() {
var xxx_messageInfo_Finding proto.InternalMessageInfo
+func (m *Finding) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
func (m *Finding) GetQuote() string {
if m != nil {
return m.Quote
@@ -1572,6 +1621,41 @@ func (m *Finding) GetQuoteInfo() *QuoteInfo {
return nil
}
+func (m *Finding) GetResourceName() string {
+ if m != nil {
+ return m.ResourceName
+ }
+ return ""
+}
+
+func (m *Finding) GetTriggerName() string {
+ if m != nil {
+ return m.TriggerName
+ }
+ return ""
+}
+
+func (m *Finding) GetLabels() map[string]string {
+ if m != nil {
+ return m.Labels
+ }
+ return nil
+}
+
+func (m *Finding) GetJobCreateTime() *timestamp.Timestamp {
+ if m != nil {
+ return m.JobCreateTime
+ }
+ return nil
+}
+
+func (m *Finding) GetJobName() string {
+ if m != nil {
+ return m.JobName
+ }
+ return ""
+}
+
// Specifies the location of the finding.
type Location struct {
// Zero-based byte offsets delimiting the finding.
@@ -1586,10 +1670,12 @@ type Location struct {
CodepointRange *Range `protobuf:"bytes,2,opt,name=codepoint_range,json=codepointRange,proto3" json:"codepoint_range,omitempty"`
// List of nested objects pointing to the precise location of the finding
// within the file or record.
- ContentLocations []*ContentLocation `protobuf:"bytes,7,rep,name=content_locations,json=contentLocations,proto3" json:"content_locations,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
+ ContentLocations []*ContentLocation `protobuf:"bytes,7,rep,name=content_locations,json=contentLocations,proto3" json:"content_locations,omitempty"`
+ // Information about the container where this finding occurred, if available.
+ Container *Container `protobuf:"bytes,8,opt,name=container,proto3" json:"container,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
}
func (m *Location) Reset() { *m = Location{} }
@@ -1638,7 +1724,15 @@ func (m *Location) GetContentLocations() []*ContentLocation {
return nil
}
-// Findings container location data.
+func (m *Location) GetContainer() *Container {
+ if m != nil {
+ return m.Container
+ }
+ return nil
+}
+
+// Precise location of the finding within a document, record, image, or metadata
+// container.
type ContentLocation struct {
// Name of the container where the finding is located.
// The top level name is the source file name or table name. Names of some
@@ -1918,6 +2012,120 @@ func (m *TableLocation) GetRowIndex() int64 {
return 0
}
+// Represents a container that may contain DLP findings.
+// Examples of a container include a file, table, or database record.
+type Container struct {
+ // Container type, for example BigQuery or Google Cloud Storage.
+ Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
+ // Project where the finding was found.
+ // Can be different from the project that owns the finding.
+ ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
+ // A string representation of the full container name.
+ // Examples:
+ // - BigQuery: 'Project:DataSetId.TableId'
+ // - Google Cloud Storage: 'gs://Bucket/folders/filename.txt'
+ FullPath string `protobuf:"bytes,3,opt,name=full_path,json=fullPath,proto3" json:"full_path,omitempty"`
+ // The root of the container.
+ // Examples:
+ // - For BigQuery table `project_id:dataset_id.table_id`, the root is
+ // `dataset_id`
+ // - For Google Cloud Storage file `gs://bucket/folder/filename.txt`, the root
+ // is `gs://bucket`
+ RootPath string `protobuf:"bytes,4,opt,name=root_path,json=rootPath,proto3" json:"root_path,omitempty"`
+ // The rest of the path after the root.
+ // Examples:
+ // - For BigQuery table `project_id:dataset_id.table_id`, the relative path is
+ // `table_id`
+ // - Google Cloud Storage file `gs://bucket/folder/filename.txt`, the relative
+ // path is `folder/filename.txt`
+ RelativePath string `protobuf:"bytes,5,opt,name=relative_path,json=relativePath,proto3" json:"relative_path,omitempty"`
+ // Findings container modification timestamp, if applicable.
+ // For Google Cloud Storage contains last file modification timestamp.
+ // For BigQuery table contains last_modified_time property.
+ // For Datastore - not populated.
+ UpdateTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // Findings container version, if available
+ // ("generation" for Google Cloud Storage).
+ Version string `protobuf:"bytes,7,opt,name=version,proto3" json:"version,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Container) Reset() { *m = Container{} }
+func (m *Container) String() string { return proto.CompactTextString(m) }
+func (*Container) ProtoMessage() {}
+func (*Container) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{15}
+}
+
+func (m *Container) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Container.Unmarshal(m, b)
+}
+func (m *Container) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Container.Marshal(b, m, deterministic)
+}
+func (m *Container) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Container.Merge(m, src)
+}
+func (m *Container) XXX_Size() int {
+ return xxx_messageInfo_Container.Size(m)
+}
+func (m *Container) XXX_DiscardUnknown() {
+ xxx_messageInfo_Container.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Container proto.InternalMessageInfo
+
+func (m *Container) GetType() string {
+ if m != nil {
+ return m.Type
+ }
+ return ""
+}
+
+func (m *Container) GetProjectId() string {
+ if m != nil {
+ return m.ProjectId
+ }
+ return ""
+}
+
+func (m *Container) GetFullPath() string {
+ if m != nil {
+ return m.FullPath
+ }
+ return ""
+}
+
+func (m *Container) GetRootPath() string {
+ if m != nil {
+ return m.RootPath
+ }
+ return ""
+}
+
+func (m *Container) GetRelativePath() string {
+ if m != nil {
+ return m.RelativePath
+ }
+ return ""
+}
+
+func (m *Container) GetUpdateTime() *timestamp.Timestamp {
+ if m != nil {
+ return m.UpdateTime
+ }
+ return nil
+}
+
+func (m *Container) GetVersion() string {
+ if m != nil {
+ return m.Version
+ }
+ return ""
+}
+
// Generic half-open interval [start, end)
type Range struct {
// Index of the first character of the range (inclusive).
@@ -1933,7 +2141,7 @@ func (m *Range) Reset() { *m = Range{} }
func (m *Range) String() string { return proto.CompactTextString(m) }
func (*Range) ProtoMessage() {}
func (*Range) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{15}
+ return fileDescriptor_6872a91dcb80f8dc, []int{16}
}
func (m *Range) XXX_Unmarshal(b []byte) error {
@@ -1981,7 +2189,7 @@ func (m *ImageLocation) Reset() { *m = ImageLocation{} }
func (m *ImageLocation) String() string { return proto.CompactTextString(m) }
func (*ImageLocation) ProtoMessage() {}
func (*ImageLocation) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{16}
+ return fileDescriptor_6872a91dcb80f8dc, []int{17}
}
func (m *ImageLocation) XXX_Unmarshal(b []byte) error {
@@ -2028,7 +2236,7 @@ func (m *BoundingBox) Reset() { *m = BoundingBox{} }
func (m *BoundingBox) String() string { return proto.CompactTextString(m) }
func (*BoundingBox) ProtoMessage() {}
func (*BoundingBox) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{17}
+ return fileDescriptor_6872a91dcb80f8dc, []int{18}
}
func (m *BoundingBox) XXX_Unmarshal(b []byte) error {
@@ -2103,7 +2311,7 @@ func (m *RedactImageRequest) Reset() { *m = RedactImageRequest{} }
func (m *RedactImageRequest) String() string { return proto.CompactTextString(m) }
func (*RedactImageRequest) ProtoMessage() {}
func (*RedactImageRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{18}
+ return fileDescriptor_6872a91dcb80f8dc, []int{19}
}
func (m *RedactImageRequest) XXX_Unmarshal(b []byte) error {
@@ -2188,7 +2396,7 @@ func (m *RedactImageRequest_ImageRedactionConfig) Reset() {
func (m *RedactImageRequest_ImageRedactionConfig) String() string { return proto.CompactTextString(m) }
func (*RedactImageRequest_ImageRedactionConfig) ProtoMessage() {}
func (*RedactImageRequest_ImageRedactionConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{18, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{19, 0}
}
func (m *RedactImageRequest_ImageRedactionConfig) XXX_Unmarshal(b []byte) error {
@@ -2280,7 +2488,7 @@ func (m *Color) Reset() { *m = Color{} }
func (m *Color) String() string { return proto.CompactTextString(m) }
func (*Color) ProtoMessage() {}
func (*Color) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{19}
+ return fileDescriptor_6872a91dcb80f8dc, []int{20}
}
func (m *Color) XXX_Unmarshal(b []byte) error {
@@ -2341,7 +2549,7 @@ func (m *RedactImageResponse) Reset() { *m = RedactImageResponse{} }
func (m *RedactImageResponse) String() string { return proto.CompactTextString(m) }
func (*RedactImageResponse) ProtoMessage() {}
func (*RedactImageResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{20}
+ return fileDescriptor_6872a91dcb80f8dc, []int{21}
}
func (m *RedactImageResponse) XXX_Unmarshal(b []byte) error {
@@ -2421,7 +2629,7 @@ func (m *DeidentifyContentRequest) Reset() { *m = DeidentifyContentReque
func (m *DeidentifyContentRequest) String() string { return proto.CompactTextString(m) }
func (*DeidentifyContentRequest) ProtoMessage() {}
func (*DeidentifyContentRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{21}
+ return fileDescriptor_6872a91dcb80f8dc, []int{22}
}
func (m *DeidentifyContentRequest) XXX_Unmarshal(b []byte) error {
@@ -2506,7 +2714,7 @@ func (m *DeidentifyContentResponse) Reset() { *m = DeidentifyContentResp
func (m *DeidentifyContentResponse) String() string { return proto.CompactTextString(m) }
func (*DeidentifyContentResponse) ProtoMessage() {}
func (*DeidentifyContentResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{22}
+ return fileDescriptor_6872a91dcb80f8dc, []int{23}
}
func (m *DeidentifyContentResponse) XXX_Unmarshal(b []byte) error {
@@ -2585,7 +2793,7 @@ func (m *ReidentifyContentRequest) Reset() { *m = ReidentifyContentReque
func (m *ReidentifyContentRequest) String() string { return proto.CompactTextString(m) }
func (*ReidentifyContentRequest) ProtoMessage() {}
func (*ReidentifyContentRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{23}
+ return fileDescriptor_6872a91dcb80f8dc, []int{24}
}
func (m *ReidentifyContentRequest) XXX_Unmarshal(b []byte) error {
@@ -2670,7 +2878,7 @@ func (m *ReidentifyContentResponse) Reset() { *m = ReidentifyContentResp
func (m *ReidentifyContentResponse) String() string { return proto.CompactTextString(m) }
func (*ReidentifyContentResponse) ProtoMessage() {}
func (*ReidentifyContentResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{24}
+ return fileDescriptor_6872a91dcb80f8dc, []int{25}
}
func (m *ReidentifyContentResponse) XXX_Unmarshal(b []byte) error {
@@ -2732,7 +2940,7 @@ func (m *InspectContentRequest) Reset() { *m = InspectContentRequest{} }
func (m *InspectContentRequest) String() string { return proto.CompactTextString(m) }
func (*InspectContentRequest) ProtoMessage() {}
func (*InspectContentRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{25}
+ return fileDescriptor_6872a91dcb80f8dc, []int{26}
}
func (m *InspectContentRequest) XXX_Unmarshal(b []byte) error {
@@ -2801,7 +3009,7 @@ func (m *InspectContentResponse) Reset() { *m = InspectContentResponse{}
func (m *InspectContentResponse) String() string { return proto.CompactTextString(m) }
func (*InspectContentResponse) ProtoMessage() {}
func (*InspectContentResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{26}
+ return fileDescriptor_6872a91dcb80f8dc, []int{27}
}
func (m *InspectContentResponse) XXX_Unmarshal(b []byte) error {
@@ -2845,6 +3053,7 @@ type OutputStorageConfig struct {
// If unspecified, then all available columns will be used for a new table or
// an (existing) table with no schema, and no changes will be made to an
// existing table that has a schema.
+ // Only for use with external storage.
OutputSchema OutputStorageConfig_OutputSchema `protobuf:"varint,3,opt,name=output_schema,json=outputSchema,proto3,enum=google.privacy.dlp.v2.OutputStorageConfig_OutputSchema" json:"output_schema,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -2855,7 +3064,7 @@ func (m *OutputStorageConfig) Reset() { *m = OutputStorageConfig{} }
func (m *OutputStorageConfig) String() string { return proto.CompactTextString(m) }
func (*OutputStorageConfig) ProtoMessage() {}
func (*OutputStorageConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{27}
+ return fileDescriptor_6872a91dcb80f8dc, []int{28}
}
func (m *OutputStorageConfig) XXX_Unmarshal(b []byte) error {
@@ -2929,7 +3138,7 @@ func (m *InfoTypeStats) Reset() { *m = InfoTypeStats{} }
func (m *InfoTypeStats) String() string { return proto.CompactTextString(m) }
func (*InfoTypeStats) ProtoMessage() {}
func (*InfoTypeStats) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{28}
+ return fileDescriptor_6872a91dcb80f8dc, []int{29}
}
func (m *InfoTypeStats) XXX_Unmarshal(b []byte) error {
@@ -2979,7 +3188,7 @@ func (m *InspectDataSourceDetails) Reset() { *m = InspectDataSourceDetai
func (m *InspectDataSourceDetails) String() string { return proto.CompactTextString(m) }
func (*InspectDataSourceDetails) ProtoMessage() {}
func (*InspectDataSourceDetails) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{29}
+ return fileDescriptor_6872a91dcb80f8dc, []int{30}
}
func (m *InspectDataSourceDetails) XXX_Unmarshal(b []byte) error {
@@ -3032,7 +3241,7 @@ func (m *InspectDataSourceDetails_RequestedOptions) Reset() {
func (m *InspectDataSourceDetails_RequestedOptions) String() string { return proto.CompactTextString(m) }
func (*InspectDataSourceDetails_RequestedOptions) ProtoMessage() {}
func (*InspectDataSourceDetails_RequestedOptions) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{29, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{30, 0}
}
func (m *InspectDataSourceDetails_RequestedOptions) XXX_Unmarshal(b []byte) error {
@@ -3075,17 +3284,22 @@ type InspectDataSourceDetails_Result struct {
TotalEstimatedBytes int64 `protobuf:"varint,2,opt,name=total_estimated_bytes,json=totalEstimatedBytes,proto3" json:"total_estimated_bytes,omitempty"`
// Statistics of how many instances of each info type were found during
// inspect job.
- InfoTypeStats []*InfoTypeStats `protobuf:"bytes,3,rep,name=info_type_stats,json=infoTypeStats,proto3" json:"info_type_stats,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
+ InfoTypeStats []*InfoTypeStats `protobuf:"bytes,3,rep,name=info_type_stats,json=infoTypeStats,proto3" json:"info_type_stats,omitempty"`
+ // Statistics related to the processing of hybrid inspect.
+ // Early access feature is in a pre-release state and might change or have
+ // limited support. For more information, see
+ // https://cloud.google.com/products#product-launch-stages.
+ HybridStats *HybridInspectStatistics `protobuf:"bytes,7,opt,name=hybrid_stats,json=hybridStats,proto3" json:"hybrid_stats,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
}
func (m *InspectDataSourceDetails_Result) Reset() { *m = InspectDataSourceDetails_Result{} }
func (m *InspectDataSourceDetails_Result) String() string { return proto.CompactTextString(m) }
func (*InspectDataSourceDetails_Result) ProtoMessage() {}
func (*InspectDataSourceDetails_Result) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{29, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{30, 1}
}
func (m *InspectDataSourceDetails_Result) XXX_Unmarshal(b []byte) error {
@@ -3127,6 +3341,77 @@ func (m *InspectDataSourceDetails_Result) GetInfoTypeStats() []*InfoTypeStats {
return nil
}
+func (m *InspectDataSourceDetails_Result) GetHybridStats() *HybridInspectStatistics {
+ if m != nil {
+ return m.HybridStats
+ }
+ return nil
+}
+
+// Statistics related to processing hybrid inspect requests.s
+type HybridInspectStatistics struct {
+ // The number of hybrid inspection requests processed within this job.
+ ProcessedCount int64 `protobuf:"varint,1,opt,name=processed_count,json=processedCount,proto3" json:"processed_count,omitempty"`
+ // The number of hybrid inspection requests aborted because the job ran
+ // out of quota or was ended before they could be processed.
+ AbortedCount int64 `protobuf:"varint,2,opt,name=aborted_count,json=abortedCount,proto3" json:"aborted_count,omitempty"`
+ // The number of hybrid requests currently being processed. Only populated
+ // when called via method `getDlpJob`.
+ // A burst of traffic may cause hybrid inspect requests to be enqueued.
+ // Processing will take place as quickly as possible, but resource limitations
+ // may impact how long a request is enqueued for.
+ PendingCount int64 `protobuf:"varint,3,opt,name=pending_count,json=pendingCount,proto3" json:"pending_count,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *HybridInspectStatistics) Reset() { *m = HybridInspectStatistics{} }
+func (m *HybridInspectStatistics) String() string { return proto.CompactTextString(m) }
+func (*HybridInspectStatistics) ProtoMessage() {}
+func (*HybridInspectStatistics) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{31}
+}
+
+func (m *HybridInspectStatistics) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_HybridInspectStatistics.Unmarshal(m, b)
+}
+func (m *HybridInspectStatistics) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_HybridInspectStatistics.Marshal(b, m, deterministic)
+}
+func (m *HybridInspectStatistics) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_HybridInspectStatistics.Merge(m, src)
+}
+func (m *HybridInspectStatistics) XXX_Size() int {
+ return xxx_messageInfo_HybridInspectStatistics.Size(m)
+}
+func (m *HybridInspectStatistics) XXX_DiscardUnknown() {
+ xxx_messageInfo_HybridInspectStatistics.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_HybridInspectStatistics proto.InternalMessageInfo
+
+func (m *HybridInspectStatistics) GetProcessedCount() int64 {
+ if m != nil {
+ return m.ProcessedCount
+ }
+ return 0
+}
+
+func (m *HybridInspectStatistics) GetAbortedCount() int64 {
+ if m != nil {
+ return m.AbortedCount
+ }
+ return 0
+}
+
+func (m *HybridInspectStatistics) GetPendingCount() int64 {
+ if m != nil {
+ return m.PendingCount
+ }
+ return 0
+}
+
// InfoType description.
type InfoTypeDescription struct {
// Internal name of the infoType.
@@ -3147,7 +3432,7 @@ func (m *InfoTypeDescription) Reset() { *m = InfoTypeDescription{} }
func (m *InfoTypeDescription) String() string { return proto.CompactTextString(m) }
func (*InfoTypeDescription) ProtoMessage() {}
func (*InfoTypeDescription) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{30}
+ return fileDescriptor_6872a91dcb80f8dc, []int{32}
}
func (m *InfoTypeDescription) XXX_Unmarshal(b []byte) error {
@@ -3217,7 +3502,7 @@ func (m *ListInfoTypesRequest) Reset() { *m = ListInfoTypesRequest{} }
func (m *ListInfoTypesRequest) String() string { return proto.CompactTextString(m) }
func (*ListInfoTypesRequest) ProtoMessage() {}
func (*ListInfoTypesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{31}
+ return fileDescriptor_6872a91dcb80f8dc, []int{33}
}
func (m *ListInfoTypesRequest) XXX_Unmarshal(b []byte) error {
@@ -3272,7 +3557,7 @@ func (m *ListInfoTypesResponse) Reset() { *m = ListInfoTypesResponse{} }
func (m *ListInfoTypesResponse) String() string { return proto.CompactTextString(m) }
func (*ListInfoTypesResponse) ProtoMessage() {}
func (*ListInfoTypesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{32}
+ return fileDescriptor_6872a91dcb80f8dc, []int{34}
}
func (m *ListInfoTypesResponse) XXX_Unmarshal(b []byte) error {
@@ -3319,7 +3604,7 @@ func (m *RiskAnalysisJobConfig) Reset() { *m = RiskAnalysisJobConfig{} }
func (m *RiskAnalysisJobConfig) String() string { return proto.CompactTextString(m) }
func (*RiskAnalysisJobConfig) ProtoMessage() {}
func (*RiskAnalysisJobConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{33}
+ return fileDescriptor_6872a91dcb80f8dc, []int{35}
}
func (m *RiskAnalysisJobConfig) XXX_Unmarshal(b []byte) error {
@@ -3383,7 +3668,7 @@ func (m *QuasiId) Reset() { *m = QuasiId{} }
func (m *QuasiId) String() string { return proto.CompactTextString(m) }
func (*QuasiId) ProtoMessage() {}
func (*QuasiId) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{34}
+ return fileDescriptor_6872a91dcb80f8dc, []int{36}
}
func (m *QuasiId) XXX_Unmarshal(b []byte) error {
@@ -3482,8 +3767,8 @@ type StatisticalTable struct {
Table *BigQueryTable `protobuf:"bytes,3,opt,name=table,proto3" json:"table,omitempty"`
// Required. Quasi-identifier columns.
QuasiIds []*StatisticalTable_QuasiIdentifierField `protobuf:"bytes,1,rep,name=quasi_ids,json=quasiIds,proto3" json:"quasi_ids,omitempty"`
- // Required. The relative frequency column must contain a floating-point number
- // between 0 and 1 (inclusive). Null values are assumed to be zero.
+ // Required. The relative frequency column must contain a floating-point
+ // number between 0 and 1 (inclusive). Null values are assumed to be zero.
RelativeFrequency *FieldId `protobuf:"bytes,2,opt,name=relative_frequency,json=relativeFrequency,proto3" json:"relative_frequency,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -3494,7 +3779,7 @@ func (m *StatisticalTable) Reset() { *m = StatisticalTable{} }
func (m *StatisticalTable) String() string { return proto.CompactTextString(m) }
func (*StatisticalTable) ProtoMessage() {}
func (*StatisticalTable) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{35}
+ return fileDescriptor_6872a91dcb80f8dc, []int{37}
}
func (m *StatisticalTable) XXX_Unmarshal(b []byte) error {
@@ -3554,7 +3839,7 @@ func (m *StatisticalTable_QuasiIdentifierField) Reset() { *m = Statistic
func (m *StatisticalTable_QuasiIdentifierField) String() string { return proto.CompactTextString(m) }
func (*StatisticalTable_QuasiIdentifierField) ProtoMessage() {}
func (*StatisticalTable_QuasiIdentifierField) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{35, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{37, 0}
}
func (m *StatisticalTable_QuasiIdentifierField) XXX_Unmarshal(b []byte) error {
@@ -3610,7 +3895,7 @@ func (m *PrivacyMetric) Reset() { *m = PrivacyMetric{} }
func (m *PrivacyMetric) String() string { return proto.CompactTextString(m) }
func (*PrivacyMetric) ProtoMessage() {}
func (*PrivacyMetric) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38}
}
func (m *PrivacyMetric) XXX_Unmarshal(b []byte) error {
@@ -3747,7 +4032,7 @@ func (m *PrivacyMetric_NumericalStatsConfig) Reset() { *m = PrivacyMetri
func (m *PrivacyMetric_NumericalStatsConfig) String() string { return proto.CompactTextString(m) }
func (*PrivacyMetric_NumericalStatsConfig) ProtoMessage() {}
func (*PrivacyMetric_NumericalStatsConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 0}
}
func (m *PrivacyMetric_NumericalStatsConfig) XXX_Unmarshal(b []byte) error {
@@ -3792,7 +4077,7 @@ func (m *PrivacyMetric_CategoricalStatsConfig) Reset() { *m = PrivacyMet
func (m *PrivacyMetric_CategoricalStatsConfig) String() string { return proto.CompactTextString(m) }
func (*PrivacyMetric_CategoricalStatsConfig) ProtoMessage() {}
func (*PrivacyMetric_CategoricalStatsConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 1}
}
func (m *PrivacyMetric_CategoricalStatsConfig) XXX_Unmarshal(b []byte) error {
@@ -3848,7 +4133,7 @@ func (m *PrivacyMetric_KAnonymityConfig) Reset() { *m = PrivacyMetric_KA
func (m *PrivacyMetric_KAnonymityConfig) String() string { return proto.CompactTextString(m) }
func (*PrivacyMetric_KAnonymityConfig) ProtoMessage() {}
func (*PrivacyMetric_KAnonymityConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 2}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 2}
}
func (m *PrivacyMetric_KAnonymityConfig) XXX_Unmarshal(b []byte) error {
@@ -3900,7 +4185,7 @@ func (m *PrivacyMetric_LDiversityConfig) Reset() { *m = PrivacyMetric_LD
func (m *PrivacyMetric_LDiversityConfig) String() string { return proto.CompactTextString(m) }
func (*PrivacyMetric_LDiversityConfig) ProtoMessage() {}
func (*PrivacyMetric_LDiversityConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 3}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 3}
}
func (m *PrivacyMetric_LDiversityConfig) XXX_Unmarshal(b []byte) error {
@@ -3942,8 +4227,8 @@ func (m *PrivacyMetric_LDiversityConfig) GetSensitiveAttribute() *FieldId {
// statistical model (indicated as one or several BigQuery tables), or by
// extrapolating from the distribution of values in the input dataset.
type PrivacyMetric_KMapEstimationConfig struct {
- // Required. Fields considered to be quasi-identifiers. No two columns can have the
- // same tag.
+ // Required. Fields considered to be quasi-identifiers. No two columns can
+ // have the same tag.
QuasiIds []*PrivacyMetric_KMapEstimationConfig_TaggedField `protobuf:"bytes,1,rep,name=quasi_ids,json=quasiIds,proto3" json:"quasi_ids,omitempty"`
// ISO 3166-1 alpha-2 region code to use in the statistical modeling.
// Set if no column is tagged with a region-specific InfoType (like
@@ -3962,7 +4247,7 @@ func (m *PrivacyMetric_KMapEstimationConfig) Reset() { *m = PrivacyMetri
func (m *PrivacyMetric_KMapEstimationConfig) String() string { return proto.CompactTextString(m) }
func (*PrivacyMetric_KMapEstimationConfig) ProtoMessage() {}
func (*PrivacyMetric_KMapEstimationConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 4}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 4}
}
func (m *PrivacyMetric_KMapEstimationConfig) XXX_Unmarshal(b []byte) error {
@@ -4030,7 +4315,7 @@ func (m *PrivacyMetric_KMapEstimationConfig_TaggedField) String() string {
}
func (*PrivacyMetric_KMapEstimationConfig_TaggedField) ProtoMessage() {}
func (*PrivacyMetric_KMapEstimationConfig_TaggedField) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 4, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 4, 0}
}
func (m *PrivacyMetric_KMapEstimationConfig_TaggedField) XXX_Unmarshal(b []byte) error {
@@ -4132,8 +4417,8 @@ type PrivacyMetric_KMapEstimationConfig_AuxiliaryTable struct {
Table *BigQueryTable `protobuf:"bytes,3,opt,name=table,proto3" json:"table,omitempty"`
// Required. Quasi-identifier columns.
QuasiIds []*PrivacyMetric_KMapEstimationConfig_AuxiliaryTable_QuasiIdField `protobuf:"bytes,1,rep,name=quasi_ids,json=quasiIds,proto3" json:"quasi_ids,omitempty"`
- // Required. The relative frequency column must contain a floating-point number
- // between 0 and 1 (inclusive). Null values are assumed to be zero.
+ // Required. The relative frequency column must contain a floating-point
+ // number between 0 and 1 (inclusive). Null values are assumed to be zero.
RelativeFrequency *FieldId `protobuf:"bytes,2,opt,name=relative_frequency,json=relativeFrequency,proto3" json:"relative_frequency,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -4148,7 +4433,7 @@ func (m *PrivacyMetric_KMapEstimationConfig_AuxiliaryTable) String() string {
}
func (*PrivacyMetric_KMapEstimationConfig_AuxiliaryTable) ProtoMessage() {}
func (*PrivacyMetric_KMapEstimationConfig_AuxiliaryTable) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 4, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 4, 1}
}
func (m *PrivacyMetric_KMapEstimationConfig_AuxiliaryTable) XXX_Unmarshal(b []byte) error {
@@ -4210,7 +4495,7 @@ func (m *PrivacyMetric_KMapEstimationConfig_AuxiliaryTable_QuasiIdField) String(
}
func (*PrivacyMetric_KMapEstimationConfig_AuxiliaryTable_QuasiIdField) ProtoMessage() {}
func (*PrivacyMetric_KMapEstimationConfig_AuxiliaryTable_QuasiIdField) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 4, 1, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 4, 1, 0}
}
func (m *PrivacyMetric_KMapEstimationConfig_AuxiliaryTable_QuasiIdField) XXX_Unmarshal(b []byte) error {
@@ -4250,8 +4535,8 @@ func (m *PrivacyMetric_KMapEstimationConfig_AuxiliaryTable_QuasiIdField) GetCust
// Similarly to the k-map metric, we cannot compute δ-presence exactly without
// knowing the attack dataset, so we use a statistical model instead.
type PrivacyMetric_DeltaPresenceEstimationConfig struct {
- // Required. Fields considered to be quasi-identifiers. No two fields can have the
- // same tag.
+ // Required. Fields considered to be quasi-identifiers. No two fields can
+ // have the same tag.
QuasiIds []*QuasiId `protobuf:"bytes,1,rep,name=quasi_ids,json=quasiIds,proto3" json:"quasi_ids,omitempty"`
// ISO 3166-1 alpha-2 region code to use in the statistical modeling.
// Set if no column is tagged with a region-specific InfoType (like
@@ -4274,7 +4559,7 @@ func (m *PrivacyMetric_DeltaPresenceEstimationConfig) String() string {
}
func (*PrivacyMetric_DeltaPresenceEstimationConfig) ProtoMessage() {}
func (*PrivacyMetric_DeltaPresenceEstimationConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{36, 5}
+ return fileDescriptor_6872a91dcb80f8dc, []int{38, 5}
}
func (m *PrivacyMetric_DeltaPresenceEstimationConfig) XXX_Unmarshal(b []byte) error {
@@ -4341,7 +4626,7 @@ func (m *AnalyzeDataSourceRiskDetails) Reset() { *m = AnalyzeDataSourceR
func (m *AnalyzeDataSourceRiskDetails) String() string { return proto.CompactTextString(m) }
func (*AnalyzeDataSourceRiskDetails) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39}
}
func (m *AnalyzeDataSourceRiskDetails) XXX_Unmarshal(b []byte) error {
@@ -4500,7 +4785,7 @@ func (m *AnalyzeDataSourceRiskDetails_NumericalStatsResult) String() string {
}
func (*AnalyzeDataSourceRiskDetails_NumericalStatsResult) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_NumericalStatsResult) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 0}
}
func (m *AnalyzeDataSourceRiskDetails_NumericalStatsResult) XXX_Unmarshal(b []byte) error {
@@ -4559,7 +4844,7 @@ func (m *AnalyzeDataSourceRiskDetails_CategoricalStatsResult) String() string {
}
func (*AnalyzeDataSourceRiskDetails_CategoricalStatsResult) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_CategoricalStatsResult) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 1}
}
func (m *AnalyzeDataSourceRiskDetails_CategoricalStatsResult) XXX_Unmarshal(b []byte) error {
@@ -4614,7 +4899,7 @@ func (m *AnalyzeDataSourceRiskDetails_CategoricalStatsResult_CategoricalStatsHis
func (*AnalyzeDataSourceRiskDetails_CategoricalStatsResult_CategoricalStatsHistogramBucket) ProtoMessage() {
}
func (*AnalyzeDataSourceRiskDetails_CategoricalStatsResult_CategoricalStatsHistogramBucket) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 1, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 1, 0}
}
func (m *AnalyzeDataSourceRiskDetails_CategoricalStatsResult_CategoricalStatsHistogramBucket) XXX_Unmarshal(b []byte) error {
@@ -4687,7 +4972,7 @@ func (m *AnalyzeDataSourceRiskDetails_KAnonymityResult) String() string {
}
func (*AnalyzeDataSourceRiskDetails_KAnonymityResult) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_KAnonymityResult) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 2}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 2}
}
func (m *AnalyzeDataSourceRiskDetails_KAnonymityResult) XXX_Unmarshal(b []byte) error {
@@ -4737,7 +5022,7 @@ func (m *AnalyzeDataSourceRiskDetails_KAnonymityResult_KAnonymityEquivalenceClas
}
func (*AnalyzeDataSourceRiskDetails_KAnonymityResult_KAnonymityEquivalenceClass) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_KAnonymityResult_KAnonymityEquivalenceClass) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 2, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 2, 0}
}
func (m *AnalyzeDataSourceRiskDetails_KAnonymityResult_KAnonymityEquivalenceClass) XXX_Unmarshal(b []byte) error {
@@ -4798,7 +5083,7 @@ func (m *AnalyzeDataSourceRiskDetails_KAnonymityResult_KAnonymityHistogramBucket
}
func (*AnalyzeDataSourceRiskDetails_KAnonymityResult_KAnonymityHistogramBucket) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_KAnonymityResult_KAnonymityHistogramBucket) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 2, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 2, 1}
}
func (m *AnalyzeDataSourceRiskDetails_KAnonymityResult_KAnonymityHistogramBucket) XXX_Unmarshal(b []byte) error {
@@ -4871,7 +5156,7 @@ func (m *AnalyzeDataSourceRiskDetails_LDiversityResult) String() string {
}
func (*AnalyzeDataSourceRiskDetails_LDiversityResult) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_LDiversityResult) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 3}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 3}
}
func (m *AnalyzeDataSourceRiskDetails_LDiversityResult) XXX_Unmarshal(b []byte) error {
@@ -4923,7 +5208,7 @@ func (m *AnalyzeDataSourceRiskDetails_LDiversityResult_LDiversityEquivalenceClas
}
func (*AnalyzeDataSourceRiskDetails_LDiversityResult_LDiversityEquivalenceClass) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_LDiversityResult_LDiversityEquivalenceClass) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 3, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 3, 0}
}
func (m *AnalyzeDataSourceRiskDetails_LDiversityResult_LDiversityEquivalenceClass) XXX_Unmarshal(b []byte) error {
@@ -5000,7 +5285,7 @@ func (m *AnalyzeDataSourceRiskDetails_LDiversityResult_LDiversityHistogramBucket
}
func (*AnalyzeDataSourceRiskDetails_LDiversityResult_LDiversityHistogramBucket) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_LDiversityResult_LDiversityHistogramBucket) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 3, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 3, 1}
}
func (m *AnalyzeDataSourceRiskDetails_LDiversityResult_LDiversityHistogramBucket) XXX_Unmarshal(b []byte) error {
@@ -5081,7 +5366,7 @@ func (m *AnalyzeDataSourceRiskDetails_KMapEstimationResult) String() string {
}
func (*AnalyzeDataSourceRiskDetails_KMapEstimationResult) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_KMapEstimationResult) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 4}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 4}
}
func (m *AnalyzeDataSourceRiskDetails_KMapEstimationResult) XXX_Unmarshal(b []byte) error {
@@ -5128,7 +5413,7 @@ func (m *AnalyzeDataSourceRiskDetails_KMapEstimationResult_KMapEstimationQuasiId
}
func (*AnalyzeDataSourceRiskDetails_KMapEstimationResult_KMapEstimationQuasiIdValues) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_KMapEstimationResult_KMapEstimationQuasiIdValues) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 4, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 4, 0}
}
func (m *AnalyzeDataSourceRiskDetails_KMapEstimationResult_KMapEstimationQuasiIdValues) XXX_Unmarshal(b []byte) error {
@@ -5197,7 +5482,7 @@ func (m *AnalyzeDataSourceRiskDetails_KMapEstimationResult_KMapEstimationHistogr
func (*AnalyzeDataSourceRiskDetails_KMapEstimationResult_KMapEstimationHistogramBucket) ProtoMessage() {
}
func (*AnalyzeDataSourceRiskDetails_KMapEstimationResult_KMapEstimationHistogramBucket) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 4, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 4, 1}
}
func (m *AnalyzeDataSourceRiskDetails_KMapEstimationResult_KMapEstimationHistogramBucket) XXX_Unmarshal(b []byte) error {
@@ -5278,7 +5563,7 @@ func (m *AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult) String() st
}
func (*AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult) ProtoMessage() {}
func (*AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 5}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 5}
}
func (m *AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult) XXX_Unmarshal(b []byte) error {
@@ -5333,7 +5618,7 @@ func (m *AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult_DeltaPresenc
func (*AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult_DeltaPresenceEstimationQuasiIdValues) ProtoMessage() {
}
func (*AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult_DeltaPresenceEstimationQuasiIdValues) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 5, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 5, 0}
}
func (m *AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult_DeltaPresenceEstimationQuasiIdValues) XXX_Unmarshal(b []byte) error {
@@ -5403,7 +5688,7 @@ func (m *AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult_DeltaPresenc
func (*AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult_DeltaPresenceEstimationHistogramBucket) ProtoMessage() {
}
func (*AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult_DeltaPresenceEstimationHistogramBucket) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{37, 5, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{39, 5, 1}
}
func (m *AnalyzeDataSourceRiskDetails_DeltaPresenceEstimationResult_DeltaPresenceEstimationHistogramBucket) XXX_Unmarshal(b []byte) error {
@@ -5474,7 +5759,7 @@ func (m *ValueFrequency) Reset() { *m = ValueFrequency{} }
func (m *ValueFrequency) String() string { return proto.CompactTextString(m) }
func (*ValueFrequency) ProtoMessage() {}
func (*ValueFrequency) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{38}
+ return fileDescriptor_6872a91dcb80f8dc, []int{40}
}
func (m *ValueFrequency) XXX_Unmarshal(b []byte) error {
@@ -5537,7 +5822,7 @@ func (m *Value) Reset() { *m = Value{} }
func (m *Value) String() string { return proto.CompactTextString(m) }
func (*Value) ProtoMessage() {}
func (*Value) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{39}
+ return fileDescriptor_6872a91dcb80f8dc, []int{41}
}
func (m *Value) XXX_Unmarshal(b []byte) error {
@@ -5703,7 +5988,7 @@ func (m *QuoteInfo) Reset() { *m = QuoteInfo{} }
func (m *QuoteInfo) String() string { return proto.CompactTextString(m) }
func (*QuoteInfo) ProtoMessage() {}
func (*QuoteInfo) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{40}
+ return fileDescriptor_6872a91dcb80f8dc, []int{42}
}
func (m *QuoteInfo) XXX_Unmarshal(b []byte) error {
@@ -5776,7 +6061,7 @@ func (m *DateTime) Reset() { *m = DateTime{} }
func (m *DateTime) String() string { return proto.CompactTextString(m) }
func (*DateTime) ProtoMessage() {}
func (*DateTime) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{41}
+ return fileDescriptor_6872a91dcb80f8dc, []int{43}
}
func (m *DateTime) XXX_Unmarshal(b []byte) error {
@@ -5839,7 +6124,7 @@ func (m *DateTime_TimeZone) Reset() { *m = DateTime_TimeZone{} }
func (m *DateTime_TimeZone) String() string { return proto.CompactTextString(m) }
func (*DateTime_TimeZone) ProtoMessage() {}
func (*DateTime_TimeZone) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{41, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{43, 0}
}
func (m *DateTime_TimeZone) XXX_Unmarshal(b []byte) error {
@@ -5872,17 +6157,20 @@ type DeidentifyConfig struct {
// Types that are valid to be assigned to Transformation:
// *DeidentifyConfig_InfoTypeTransformations
// *DeidentifyConfig_RecordTransformations
- Transformation isDeidentifyConfig_Transformation `protobuf_oneof:"transformation"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
+ Transformation isDeidentifyConfig_Transformation `protobuf_oneof:"transformation"`
+ // Mode for handling transformation errors. If left unspecified, the default
+ // mode is `TransformationErrorHandling.ThrowError`.
+ TransformationErrorHandling *TransformationErrorHandling `protobuf:"bytes,3,opt,name=transformation_error_handling,json=transformationErrorHandling,proto3" json:"transformation_error_handling,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
}
func (m *DeidentifyConfig) Reset() { *m = DeidentifyConfig{} }
func (m *DeidentifyConfig) String() string { return proto.CompactTextString(m) }
func (*DeidentifyConfig) ProtoMessage() {}
func (*DeidentifyConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{42}
+ return fileDescriptor_6872a91dcb80f8dc, []int{44}
}
func (m *DeidentifyConfig) XXX_Unmarshal(b []byte) error {
@@ -5940,6 +6228,13 @@ func (m *DeidentifyConfig) GetRecordTransformations() *RecordTransformations {
return nil
}
+func (m *DeidentifyConfig) GetTransformationErrorHandling() *TransformationErrorHandling {
+ if m != nil {
+ return m.TransformationErrorHandling
+ }
+ return nil
+}
+
// XXX_OneofWrappers is for the internal use of the proto package.
func (*DeidentifyConfig) XXX_OneofWrappers() []interface{} {
return []interface{}{
@@ -5948,47 +6243,210 @@ func (*DeidentifyConfig) XXX_OneofWrappers() []interface{} {
}
}
-// A rule for transforming a value.
-type PrimitiveTransformation struct {
- // Types that are valid to be assigned to Transformation:
- // *PrimitiveTransformation_ReplaceConfig
- // *PrimitiveTransformation_RedactConfig
- // *PrimitiveTransformation_CharacterMaskConfig
- // *PrimitiveTransformation_CryptoReplaceFfxFpeConfig
- // *PrimitiveTransformation_FixedSizeBucketingConfig
- // *PrimitiveTransformation_BucketingConfig
- // *PrimitiveTransformation_ReplaceWithInfoTypeConfig
- // *PrimitiveTransformation_TimePartConfig
- // *PrimitiveTransformation_CryptoHashConfig
- // *PrimitiveTransformation_DateShiftConfig
- // *PrimitiveTransformation_CryptoDeterministicConfig
- Transformation isPrimitiveTransformation_Transformation `protobuf_oneof:"transformation"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
+// How to handle transformation errors during de-identification. A
+// transformation error occurs when the requested transformation is incompatible
+// with the data. For example, trying to de-identify an IP address using a
+// `DateShift` transformation would result in a transformation error, since date
+// info cannot be extracted from an IP address.
+// Information about any incompatible transformations, and how they were
+// handled, is returned in the response as part of the
+// `TransformationOverviews`.
+type TransformationErrorHandling struct {
+ // How transformation errors should be handled.
+ //
+ // Types that are valid to be assigned to Mode:
+ // *TransformationErrorHandling_ThrowError_
+ // *TransformationErrorHandling_LeaveUntransformed_
+ Mode isTransformationErrorHandling_Mode `protobuf_oneof:"mode"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
}
-func (m *PrimitiveTransformation) Reset() { *m = PrimitiveTransformation{} }
-func (m *PrimitiveTransformation) String() string { return proto.CompactTextString(m) }
-func (*PrimitiveTransformation) ProtoMessage() {}
-func (*PrimitiveTransformation) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{43}
+func (m *TransformationErrorHandling) Reset() { *m = TransformationErrorHandling{} }
+func (m *TransformationErrorHandling) String() string { return proto.CompactTextString(m) }
+func (*TransformationErrorHandling) ProtoMessage() {}
+func (*TransformationErrorHandling) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{45}
}
-func (m *PrimitiveTransformation) XXX_Unmarshal(b []byte) error {
- return xxx_messageInfo_PrimitiveTransformation.Unmarshal(m, b)
+func (m *TransformationErrorHandling) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TransformationErrorHandling.Unmarshal(m, b)
}
-func (m *PrimitiveTransformation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
- return xxx_messageInfo_PrimitiveTransformation.Marshal(b, m, deterministic)
+func (m *TransformationErrorHandling) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TransformationErrorHandling.Marshal(b, m, deterministic)
}
-func (m *PrimitiveTransformation) XXX_Merge(src proto.Message) {
- xxx_messageInfo_PrimitiveTransformation.Merge(m, src)
+func (m *TransformationErrorHandling) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TransformationErrorHandling.Merge(m, src)
}
-func (m *PrimitiveTransformation) XXX_Size() int {
- return xxx_messageInfo_PrimitiveTransformation.Size(m)
+func (m *TransformationErrorHandling) XXX_Size() int {
+ return xxx_messageInfo_TransformationErrorHandling.Size(m)
}
-func (m *PrimitiveTransformation) XXX_DiscardUnknown() {
- xxx_messageInfo_PrimitiveTransformation.DiscardUnknown(m)
+func (m *TransformationErrorHandling) XXX_DiscardUnknown() {
+ xxx_messageInfo_TransformationErrorHandling.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TransformationErrorHandling proto.InternalMessageInfo
+
+type isTransformationErrorHandling_Mode interface {
+ isTransformationErrorHandling_Mode()
+}
+
+type TransformationErrorHandling_ThrowError_ struct {
+ ThrowError *TransformationErrorHandling_ThrowError `protobuf:"bytes,1,opt,name=throw_error,json=throwError,proto3,oneof"`
+}
+
+type TransformationErrorHandling_LeaveUntransformed_ struct {
+ LeaveUntransformed *TransformationErrorHandling_LeaveUntransformed `protobuf:"bytes,2,opt,name=leave_untransformed,json=leaveUntransformed,proto3,oneof"`
+}
+
+func (*TransformationErrorHandling_ThrowError_) isTransformationErrorHandling_Mode() {}
+
+func (*TransformationErrorHandling_LeaveUntransformed_) isTransformationErrorHandling_Mode() {}
+
+func (m *TransformationErrorHandling) GetMode() isTransformationErrorHandling_Mode {
+ if m != nil {
+ return m.Mode
+ }
+ return nil
+}
+
+func (m *TransformationErrorHandling) GetThrowError() *TransformationErrorHandling_ThrowError {
+ if x, ok := m.GetMode().(*TransformationErrorHandling_ThrowError_); ok {
+ return x.ThrowError
+ }
+ return nil
+}
+
+func (m *TransformationErrorHandling) GetLeaveUntransformed() *TransformationErrorHandling_LeaveUntransformed {
+ if x, ok := m.GetMode().(*TransformationErrorHandling_LeaveUntransformed_); ok {
+ return x.LeaveUntransformed
+ }
+ return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*TransformationErrorHandling) XXX_OneofWrappers() []interface{} {
+ return []interface{}{
+ (*TransformationErrorHandling_ThrowError_)(nil),
+ (*TransformationErrorHandling_LeaveUntransformed_)(nil),
+ }
+}
+
+// Throw an error and fail the request when a transformation error occurs.
+type TransformationErrorHandling_ThrowError struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TransformationErrorHandling_ThrowError) Reset() {
+ *m = TransformationErrorHandling_ThrowError{}
+}
+func (m *TransformationErrorHandling_ThrowError) String() string { return proto.CompactTextString(m) }
+func (*TransformationErrorHandling_ThrowError) ProtoMessage() {}
+func (*TransformationErrorHandling_ThrowError) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{45, 0}
+}
+
+func (m *TransformationErrorHandling_ThrowError) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TransformationErrorHandling_ThrowError.Unmarshal(m, b)
+}
+func (m *TransformationErrorHandling_ThrowError) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TransformationErrorHandling_ThrowError.Marshal(b, m, deterministic)
+}
+func (m *TransformationErrorHandling_ThrowError) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TransformationErrorHandling_ThrowError.Merge(m, src)
+}
+func (m *TransformationErrorHandling_ThrowError) XXX_Size() int {
+ return xxx_messageInfo_TransformationErrorHandling_ThrowError.Size(m)
+}
+func (m *TransformationErrorHandling_ThrowError) XXX_DiscardUnknown() {
+ xxx_messageInfo_TransformationErrorHandling_ThrowError.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TransformationErrorHandling_ThrowError proto.InternalMessageInfo
+
+// Skips the data without modifying it if the requested transformation would
+// cause an error. For example, if a `DateShift` transformation were applied
+// an an IP address, this mode would leave the IP address unchanged in the
+// response.
+type TransformationErrorHandling_LeaveUntransformed struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TransformationErrorHandling_LeaveUntransformed) Reset() {
+ *m = TransformationErrorHandling_LeaveUntransformed{}
+}
+func (m *TransformationErrorHandling_LeaveUntransformed) String() string {
+ return proto.CompactTextString(m)
+}
+func (*TransformationErrorHandling_LeaveUntransformed) ProtoMessage() {}
+func (*TransformationErrorHandling_LeaveUntransformed) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{45, 1}
+}
+
+func (m *TransformationErrorHandling_LeaveUntransformed) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TransformationErrorHandling_LeaveUntransformed.Unmarshal(m, b)
+}
+func (m *TransformationErrorHandling_LeaveUntransformed) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TransformationErrorHandling_LeaveUntransformed.Marshal(b, m, deterministic)
+}
+func (m *TransformationErrorHandling_LeaveUntransformed) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TransformationErrorHandling_LeaveUntransformed.Merge(m, src)
+}
+func (m *TransformationErrorHandling_LeaveUntransformed) XXX_Size() int {
+ return xxx_messageInfo_TransformationErrorHandling_LeaveUntransformed.Size(m)
+}
+func (m *TransformationErrorHandling_LeaveUntransformed) XXX_DiscardUnknown() {
+ xxx_messageInfo_TransformationErrorHandling_LeaveUntransformed.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TransformationErrorHandling_LeaveUntransformed proto.InternalMessageInfo
+
+// A rule for transforming a value.
+type PrimitiveTransformation struct {
+ // Types that are valid to be assigned to Transformation:
+ // *PrimitiveTransformation_ReplaceConfig
+ // *PrimitiveTransformation_RedactConfig
+ // *PrimitiveTransformation_CharacterMaskConfig
+ // *PrimitiveTransformation_CryptoReplaceFfxFpeConfig
+ // *PrimitiveTransformation_FixedSizeBucketingConfig
+ // *PrimitiveTransformation_BucketingConfig
+ // *PrimitiveTransformation_ReplaceWithInfoTypeConfig
+ // *PrimitiveTransformation_TimePartConfig
+ // *PrimitiveTransformation_CryptoHashConfig
+ // *PrimitiveTransformation_DateShiftConfig
+ // *PrimitiveTransformation_CryptoDeterministicConfig
+ Transformation isPrimitiveTransformation_Transformation `protobuf_oneof:"transformation"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PrimitiveTransformation) Reset() { *m = PrimitiveTransformation{} }
+func (m *PrimitiveTransformation) String() string { return proto.CompactTextString(m) }
+func (*PrimitiveTransformation) ProtoMessage() {}
+func (*PrimitiveTransformation) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{46}
+}
+
+func (m *PrimitiveTransformation) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PrimitiveTransformation.Unmarshal(m, b)
+}
+func (m *PrimitiveTransformation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PrimitiveTransformation.Marshal(b, m, deterministic)
+}
+func (m *PrimitiveTransformation) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PrimitiveTransformation.Merge(m, src)
+}
+func (m *PrimitiveTransformation) XXX_Size() int {
+ return xxx_messageInfo_PrimitiveTransformation.Size(m)
+}
+func (m *PrimitiveTransformation) XXX_DiscardUnknown() {
+ xxx_messageInfo_PrimitiveTransformation.DiscardUnknown(m)
}
var xxx_messageInfo_PrimitiveTransformation proto.InternalMessageInfo
@@ -6178,7 +6636,7 @@ func (m *TimePartConfig) Reset() { *m = TimePartConfig{} }
func (m *TimePartConfig) String() string { return proto.CompactTextString(m) }
func (*TimePartConfig) ProtoMessage() {}
func (*TimePartConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{44}
+ return fileDescriptor_6872a91dcb80f8dc, []int{47}
}
func (m *TimePartConfig) XXX_Unmarshal(b []byte) error {
@@ -6225,7 +6683,7 @@ func (m *CryptoHashConfig) Reset() { *m = CryptoHashConfig{} }
func (m *CryptoHashConfig) String() string { return proto.CompactTextString(m) }
func (*CryptoHashConfig) ProtoMessage() {}
func (*CryptoHashConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{45}
+ return fileDescriptor_6872a91dcb80f8dc, []int{48}
}
func (m *CryptoHashConfig) XXX_Unmarshal(b []byte) error {
@@ -6320,7 +6778,7 @@ func (m *CryptoDeterministicConfig) Reset() { *m = CryptoDeterministicCo
func (m *CryptoDeterministicConfig) String() string { return proto.CompactTextString(m) }
func (*CryptoDeterministicConfig) ProtoMessage() {}
func (*CryptoDeterministicConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{46}
+ return fileDescriptor_6872a91dcb80f8dc, []int{49}
}
func (m *CryptoDeterministicConfig) XXX_Unmarshal(b []byte) error {
@@ -6375,7 +6833,7 @@ func (m *ReplaceValueConfig) Reset() { *m = ReplaceValueConfig{} }
func (m *ReplaceValueConfig) String() string { return proto.CompactTextString(m) }
func (*ReplaceValueConfig) ProtoMessage() {}
func (*ReplaceValueConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{47}
+ return fileDescriptor_6872a91dcb80f8dc, []int{50}
}
func (m *ReplaceValueConfig) XXX_Unmarshal(b []byte) error {
@@ -6414,7 +6872,7 @@ func (m *ReplaceWithInfoTypeConfig) Reset() { *m = ReplaceWithInfoTypeCo
func (m *ReplaceWithInfoTypeConfig) String() string { return proto.CompactTextString(m) }
func (*ReplaceWithInfoTypeConfig) ProtoMessage() {}
func (*ReplaceWithInfoTypeConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{48}
+ return fileDescriptor_6872a91dcb80f8dc, []int{51}
}
func (m *ReplaceWithInfoTypeConfig) XXX_Unmarshal(b []byte) error {
@@ -6448,7 +6906,7 @@ func (m *RedactConfig) Reset() { *m = RedactConfig{} }
func (m *RedactConfig) String() string { return proto.CompactTextString(m) }
func (*RedactConfig) ProtoMessage() {}
func (*RedactConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{49}
+ return fileDescriptor_6872a91dcb80f8dc, []int{52}
}
func (m *RedactConfig) XXX_Unmarshal(b []byte) error {
@@ -6485,7 +6943,7 @@ func (m *CharsToIgnore) Reset() { *m = CharsToIgnore{} }
func (m *CharsToIgnore) String() string { return proto.CompactTextString(m) }
func (*CharsToIgnore) ProtoMessage() {}
func (*CharsToIgnore) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{50}
+ return fileDescriptor_6872a91dcb80f8dc, []int{53}
}
func (m *CharsToIgnore) XXX_Unmarshal(b []byte) error {
@@ -6586,7 +7044,7 @@ func (m *CharacterMaskConfig) Reset() { *m = CharacterMaskConfig{} }
func (m *CharacterMaskConfig) String() string { return proto.CompactTextString(m) }
func (*CharacterMaskConfig) ProtoMessage() {}
func (*CharacterMaskConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{51}
+ return fileDescriptor_6872a91dcb80f8dc, []int{54}
}
func (m *CharacterMaskConfig) XXX_Unmarshal(b []byte) error {
@@ -6652,16 +7110,16 @@ func (m *CharacterMaskConfig) GetCharactersToIgnore() []*CharsToIgnore {
//
// See https://cloud.google.com/dlp/docs/concepts-bucketing to learn more.
type FixedSizeBucketingConfig struct {
- // Required. Lower bound value of buckets. All values less than `lower_bound` are
- // grouped together into a single bucket; for example if `lower_bound` = 10,
- // then all values less than 10 are replaced with the value “-10”.
+ // Required. Lower bound value of buckets. All values less than `lower_bound`
+ // are grouped together into a single bucket; for example if `lower_bound` =
+ // 10, then all values less than 10 are replaced with the value “-10”.
LowerBound *Value `protobuf:"bytes,1,opt,name=lower_bound,json=lowerBound,proto3" json:"lower_bound,omitempty"`
- // Required. Upper bound value of buckets. All values greater than upper_bound are
- // grouped together into a single bucket; for example if `upper_bound` = 89,
- // then all values greater than 89 are replaced with the value “89+”.
+ // Required. Upper bound value of buckets. All values greater than upper_bound
+ // are grouped together into a single bucket; for example if `upper_bound` =
+ // 89, then all values greater than 89 are replaced with the value “89+”.
UpperBound *Value `protobuf:"bytes,2,opt,name=upper_bound,json=upperBound,proto3" json:"upper_bound,omitempty"`
- // Required. Size of each bucket (except for minimum and maximum buckets). So if
- // `lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the
+ // Required. Size of each bucket (except for minimum and maximum buckets). So
+ // if `lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the
// following buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60,
// 60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works.
BucketSize float64 `protobuf:"fixed64,3,opt,name=bucket_size,json=bucketSize,proto3" json:"bucket_size,omitempty"`
@@ -6674,7 +7132,7 @@ func (m *FixedSizeBucketingConfig) Reset() { *m = FixedSizeBucketingConf
func (m *FixedSizeBucketingConfig) String() string { return proto.CompactTextString(m) }
func (*FixedSizeBucketingConfig) ProtoMessage() {}
func (*FixedSizeBucketingConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{52}
+ return fileDescriptor_6872a91dcb80f8dc, []int{55}
}
func (m *FixedSizeBucketingConfig) XXX_Unmarshal(b []byte) error {
@@ -6737,7 +7195,7 @@ func (m *BucketingConfig) Reset() { *m = BucketingConfig{} }
func (m *BucketingConfig) String() string { return proto.CompactTextString(m) }
func (*BucketingConfig) ProtoMessage() {}
func (*BucketingConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{53}
+ return fileDescriptor_6872a91dcb80f8dc, []int{56}
}
func (m *BucketingConfig) XXX_Unmarshal(b []byte) error {
@@ -6784,7 +7242,7 @@ func (m *BucketingConfig_Bucket) Reset() { *m = BucketingConfig_Bucket{}
func (m *BucketingConfig_Bucket) String() string { return proto.CompactTextString(m) }
func (*BucketingConfig_Bucket) ProtoMessage() {}
func (*BucketingConfig_Bucket) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{53, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{56, 0}
}
func (m *BucketingConfig_Bucket) XXX_Unmarshal(b []byte) error {
@@ -6905,7 +7363,7 @@ func (m *CryptoReplaceFfxFpeConfig) Reset() { *m = CryptoReplaceFfxFpeCo
func (m *CryptoReplaceFfxFpeConfig) String() string { return proto.CompactTextString(m) }
func (*CryptoReplaceFfxFpeConfig) ProtoMessage() {}
func (*CryptoReplaceFfxFpeConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{54}
+ return fileDescriptor_6872a91dcb80f8dc, []int{57}
}
func (m *CryptoReplaceFfxFpeConfig) XXX_Unmarshal(b []byte) error {
@@ -7028,7 +7486,7 @@ func (m *CryptoKey) Reset() { *m = CryptoKey{} }
func (m *CryptoKey) String() string { return proto.CompactTextString(m) }
func (*CryptoKey) ProtoMessage() {}
func (*CryptoKey) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{55}
+ return fileDescriptor_6872a91dcb80f8dc, []int{58}
}
func (m *CryptoKey) XXX_Unmarshal(b []byte) error {
@@ -7127,7 +7585,7 @@ func (m *TransientCryptoKey) Reset() { *m = TransientCryptoKey{} }
func (m *TransientCryptoKey) String() string { return proto.CompactTextString(m) }
func (*TransientCryptoKey) ProtoMessage() {}
func (*TransientCryptoKey) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{56}
+ return fileDescriptor_6872a91dcb80f8dc, []int{59}
}
func (m *TransientCryptoKey) XXX_Unmarshal(b []byte) error {
@@ -7169,7 +7627,7 @@ func (m *UnwrappedCryptoKey) Reset() { *m = UnwrappedCryptoKey{} }
func (m *UnwrappedCryptoKey) String() string { return proto.CompactTextString(m) }
func (*UnwrappedCryptoKey) ProtoMessage() {}
func (*UnwrappedCryptoKey) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{57}
+ return fileDescriptor_6872a91dcb80f8dc, []int{60}
}
func (m *UnwrappedCryptoKey) XXX_Unmarshal(b []byte) error {
@@ -7216,7 +7674,7 @@ func (m *KmsWrappedCryptoKey) Reset() { *m = KmsWrappedCryptoKey{} }
func (m *KmsWrappedCryptoKey) String() string { return proto.CompactTextString(m) }
func (*KmsWrappedCryptoKey) ProtoMessage() {}
func (*KmsWrappedCryptoKey) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{58}
+ return fileDescriptor_6872a91dcb80f8dc, []int{61}
}
func (m *KmsWrappedCryptoKey) XXX_Unmarshal(b []byte) error {
@@ -7255,13 +7713,14 @@ func (m *KmsWrappedCryptoKey) GetCryptoKeyName() string {
// same context. See https://cloud.google.com/dlp/docs/concepts-date-shifting
// to learn more.
type DateShiftConfig struct {
- // Required. Range of shift in days. Actual shift will be selected at random within this
- // range (inclusive ends). Negative means shift to earlier in time. Must not
- // be more than 365250 days (1000 years) each direction.
+ // Required. Range of shift in days. Actual shift will be selected at random
+ // within this range (inclusive ends). Negative means shift to earlier in
+ // time. Must not be more than 365250 days (1000 years) each direction.
//
// For example, 3 means shift date to at most 3 days into the future.
UpperBoundDays int32 `protobuf:"varint,1,opt,name=upper_bound_days,json=upperBoundDays,proto3" json:"upper_bound_days,omitempty"`
- // Required. For example, -5 means shift date to at most 5 days back in the past.
+ // Required. For example, -5 means shift date to at most 5 days back in the
+ // past.
LowerBoundDays int32 `protobuf:"varint,2,opt,name=lower_bound_days,json=lowerBoundDays,proto3" json:"lower_bound_days,omitempty"`
// Points to the field that contains the context, for example, an entity id.
// If set, must also set cryptoKey. If set, shift will be consistent for the
@@ -7282,7 +7741,7 @@ func (m *DateShiftConfig) Reset() { *m = DateShiftConfig{} }
func (m *DateShiftConfig) String() string { return proto.CompactTextString(m) }
func (*DateShiftConfig) ProtoMessage() {}
func (*DateShiftConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{59}
+ return fileDescriptor_6872a91dcb80f8dc, []int{62}
}
func (m *DateShiftConfig) XXX_Unmarshal(b []byte) error {
@@ -7372,7 +7831,7 @@ func (m *InfoTypeTransformations) Reset() { *m = InfoTypeTransformations
func (m *InfoTypeTransformations) String() string { return proto.CompactTextString(m) }
func (*InfoTypeTransformations) ProtoMessage() {}
func (*InfoTypeTransformations) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{60}
+ return fileDescriptor_6872a91dcb80f8dc, []int{63}
}
func (m *InfoTypeTransformations) XXX_Unmarshal(b []byte) error {
@@ -7422,7 +7881,7 @@ func (m *InfoTypeTransformations_InfoTypeTransformation) String() string {
}
func (*InfoTypeTransformations_InfoTypeTransformation) ProtoMessage() {}
func (*InfoTypeTransformations_InfoTypeTransformation) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{60, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{63, 0}
}
func (m *InfoTypeTransformations_InfoTypeTransformation) XXX_Unmarshal(b []byte) error {
@@ -7486,7 +7945,7 @@ func (m *FieldTransformation) Reset() { *m = FieldTransformation{} }
func (m *FieldTransformation) String() string { return proto.CompactTextString(m) }
func (*FieldTransformation) ProtoMessage() {}
func (*FieldTransformation) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{61}
+ return fileDescriptor_6872a91dcb80f8dc, []int{64}
}
func (m *FieldTransformation) XXX_Unmarshal(b []byte) error {
@@ -7583,7 +8042,7 @@ func (m *RecordTransformations) Reset() { *m = RecordTransformations{} }
func (m *RecordTransformations) String() string { return proto.CompactTextString(m) }
func (*RecordTransformations) ProtoMessage() {}
func (*RecordTransformations) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{62}
+ return fileDescriptor_6872a91dcb80f8dc, []int{65}
}
func (m *RecordTransformations) XXX_Unmarshal(b []byte) error {
@@ -7633,7 +8092,7 @@ func (m *RecordSuppression) Reset() { *m = RecordSuppression{} }
func (m *RecordSuppression) String() string { return proto.CompactTextString(m) }
func (*RecordSuppression) ProtoMessage() {}
func (*RecordSuppression) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{63}
+ return fileDescriptor_6872a91dcb80f8dc, []int{66}
}
func (m *RecordSuppression) XXX_Unmarshal(b []byte) error {
@@ -7675,7 +8134,7 @@ func (m *RecordCondition) Reset() { *m = RecordCondition{} }
func (m *RecordCondition) String() string { return proto.CompactTextString(m) }
func (*RecordCondition) ProtoMessage() {}
func (*RecordCondition) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{64}
+ return fileDescriptor_6872a91dcb80f8dc, []int{67}
}
func (m *RecordCondition) XXX_Unmarshal(b []byte) error {
@@ -7738,7 +8197,7 @@ func (m *RecordCondition_Condition) Reset() { *m = RecordCondition_Condi
func (m *RecordCondition_Condition) String() string { return proto.CompactTextString(m) }
func (*RecordCondition_Condition) ProtoMessage() {}
func (*RecordCondition_Condition) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{64, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{67, 0}
}
func (m *RecordCondition_Condition) XXX_Unmarshal(b []byte) error {
@@ -7793,7 +8252,7 @@ func (m *RecordCondition_Conditions) Reset() { *m = RecordCondition_Cond
func (m *RecordCondition_Conditions) String() string { return proto.CompactTextString(m) }
func (*RecordCondition_Conditions) ProtoMessage() {}
func (*RecordCondition_Conditions) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{64, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{67, 1}
}
func (m *RecordCondition_Conditions) XXX_Unmarshal(b []byte) error {
@@ -7840,7 +8299,7 @@ func (m *RecordCondition_Expressions) Reset() { *m = RecordCondition_Exp
func (m *RecordCondition_Expressions) String() string { return proto.CompactTextString(m) }
func (*RecordCondition_Expressions) ProtoMessage() {}
func (*RecordCondition_Expressions) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{64, 2}
+ return fileDescriptor_6872a91dcb80f8dc, []int{67, 2}
}
func (m *RecordCondition_Expressions) XXX_Unmarshal(b []byte) error {
@@ -7914,7 +8373,7 @@ func (m *TransformationOverview) Reset() { *m = TransformationOverview{}
func (m *TransformationOverview) String() string { return proto.CompactTextString(m) }
func (*TransformationOverview) ProtoMessage() {}
func (*TransformationOverview) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{65}
+ return fileDescriptor_6872a91dcb80f8dc, []int{68}
}
func (m *TransformationOverview) XXX_Unmarshal(b []byte) error {
@@ -7978,7 +8437,7 @@ func (m *TransformationSummary) Reset() { *m = TransformationSummary{} }
func (m *TransformationSummary) String() string { return proto.CompactTextString(m) }
func (*TransformationSummary) ProtoMessage() {}
func (*TransformationSummary) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{66}
+ return fileDescriptor_6872a91dcb80f8dc, []int{69}
}
func (m *TransformationSummary) XXX_Unmarshal(b []byte) error {
@@ -8067,7 +8526,7 @@ func (m *TransformationSummary_SummaryResult) Reset() { *m = Transformat
func (m *TransformationSummary_SummaryResult) String() string { return proto.CompactTextString(m) }
func (*TransformationSummary_SummaryResult) ProtoMessage() {}
func (*TransformationSummary_SummaryResult) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{66, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{69, 0}
}
func (m *TransformationSummary_SummaryResult) XXX_Unmarshal(b []byte) error {
@@ -8123,7 +8582,7 @@ func (m *Schedule) Reset() { *m = Schedule{} }
func (m *Schedule) String() string { return proto.CompactTextString(m) }
func (*Schedule) ProtoMessage() {}
func (*Schedule) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{67}
+ return fileDescriptor_6872a91dcb80f8dc, []int{70}
}
func (m *Schedule) XXX_Unmarshal(b []byte) error {
@@ -8175,6 +8634,39 @@ func (*Schedule) XXX_OneofWrappers() []interface{} {
}
}
+// Job trigger option for hybrid jobs. Jobs must be manually created
+// and finished.
+type Manual struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Manual) Reset() { *m = Manual{} }
+func (m *Manual) String() string { return proto.CompactTextString(m) }
+func (*Manual) ProtoMessage() {}
+func (*Manual) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{71}
+}
+
+func (m *Manual) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Manual.Unmarshal(m, b)
+}
+func (m *Manual) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Manual.Marshal(b, m, deterministic)
+}
+func (m *Manual) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Manual.Merge(m, src)
+}
+func (m *Manual) XXX_Size() int {
+ return xxx_messageInfo_Manual.Size(m)
+}
+func (m *Manual) XXX_DiscardUnknown() {
+ xxx_messageInfo_Manual.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Manual proto.InternalMessageInfo
+
// The inspectTemplate contains a configuration (set of types of sensitive data
// to be detected) to be used anywhere you otherwise would normally specify
// InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
@@ -8205,7 +8697,7 @@ func (m *InspectTemplate) Reset() { *m = InspectTemplate{} }
func (m *InspectTemplate) String() string { return proto.CompactTextString(m) }
func (*InspectTemplate) ProtoMessage() {}
func (*InspectTemplate) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{68}
+ return fileDescriptor_6872a91dcb80f8dc, []int{72}
}
func (m *InspectTemplate) XXX_Unmarshal(b []byte) error {
@@ -8296,7 +8788,7 @@ func (m *DeidentifyTemplate) Reset() { *m = DeidentifyTemplate{} }
func (m *DeidentifyTemplate) String() string { return proto.CompactTextString(m) }
func (*DeidentifyTemplate) ProtoMessage() {}
func (*DeidentifyTemplate) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{69}
+ return fileDescriptor_6872a91dcb80f8dc, []int{73}
}
func (m *DeidentifyTemplate) XXX_Unmarshal(b []byte) error {
@@ -8375,7 +8867,7 @@ func (m *Error) Reset() { *m = Error{} }
func (m *Error) String() string { return proto.CompactTextString(m) }
func (*Error) ProtoMessage() {}
func (*Error) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{70}
+ return fileDescriptor_6872a91dcb80f8dc, []int{74}
}
func (m *Error) XXX_Unmarshal(b []byte) error {
@@ -8430,8 +8922,8 @@ type JobTrigger struct {
// needs to trigger for a job to be started. The list may contain only
// a single Schedule trigger and must have at least one object.
Triggers []*JobTrigger_Trigger `protobuf:"bytes,5,rep,name=triggers,proto3" json:"triggers,omitempty"`
- // Output only. A stream of errors encountered when the trigger was activated. Repeated
- // errors may result in the JobTrigger automatically being paused.
+ // Output only. A stream of errors encountered when the trigger was activated.
+ // Repeated errors may result in the JobTrigger automatically being paused.
// Will return the last 100 errors. Whenever the JobTrigger is modified
// this list will be cleared.
Errors []*Error `protobuf:"bytes,6,rep,name=errors,proto3" json:"errors,omitempty"`
@@ -8452,7 +8944,7 @@ func (m *JobTrigger) Reset() { *m = JobTrigger{} }
func (m *JobTrigger) String() string { return proto.CompactTextString(m) }
func (*JobTrigger) ProtoMessage() {}
func (*JobTrigger) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{71}
+ return fileDescriptor_6872a91dcb80f8dc, []int{75}
}
func (m *JobTrigger) XXX_Unmarshal(b []byte) error {
@@ -8571,6 +9063,7 @@ func (*JobTrigger) XXX_OneofWrappers() []interface{} {
type JobTrigger_Trigger struct {
// Types that are valid to be assigned to Trigger:
// *JobTrigger_Trigger_Schedule
+ // *JobTrigger_Trigger_Manual
Trigger isJobTrigger_Trigger_Trigger `protobuf_oneof:"trigger"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -8581,7 +9074,7 @@ func (m *JobTrigger_Trigger) Reset() { *m = JobTrigger_Trigger{} }
func (m *JobTrigger_Trigger) String() string { return proto.CompactTextString(m) }
func (*JobTrigger_Trigger) ProtoMessage() {}
func (*JobTrigger_Trigger) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{71, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{75, 0}
}
func (m *JobTrigger_Trigger) XXX_Unmarshal(b []byte) error {
@@ -8610,8 +9103,14 @@ type JobTrigger_Trigger_Schedule struct {
Schedule *Schedule `protobuf:"bytes,1,opt,name=schedule,proto3,oneof"`
}
+type JobTrigger_Trigger_Manual struct {
+ Manual *Manual `protobuf:"bytes,2,opt,name=manual,proto3,oneof"`
+}
+
func (*JobTrigger_Trigger_Schedule) isJobTrigger_Trigger_Trigger() {}
+func (*JobTrigger_Trigger_Manual) isJobTrigger_Trigger_Trigger() {}
+
func (m *JobTrigger_Trigger) GetTrigger() isJobTrigger_Trigger_Trigger {
if m != nil {
return m.Trigger
@@ -8626,10 +9125,18 @@ func (m *JobTrigger_Trigger) GetSchedule() *Schedule {
return nil
}
+func (m *JobTrigger_Trigger) GetManual() *Manual {
+ if x, ok := m.GetTrigger().(*JobTrigger_Trigger_Manual); ok {
+ return x.Manual
+ }
+ return nil
+}
+
// XXX_OneofWrappers is for the internal use of the proto package.
func (*JobTrigger_Trigger) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*JobTrigger_Trigger_Schedule)(nil),
+ (*JobTrigger_Trigger_Manual)(nil),
}
}
@@ -8653,7 +9160,7 @@ func (m *Action) Reset() { *m = Action{} }
func (m *Action) String() string { return proto.CompactTextString(m) }
func (*Action) ProtoMessage() {}
func (*Action) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{72}
+ return fileDescriptor_6872a91dcb80f8dc, []int{76}
}
func (m *Action) XXX_Unmarshal(b []byte) error {
@@ -8791,7 +9298,7 @@ func (m *Action_SaveFindings) Reset() { *m = Action_SaveFindings{} }
func (m *Action_SaveFindings) String() string { return proto.CompactTextString(m) }
func (*Action_SaveFindings) ProtoMessage() {}
func (*Action_SaveFindings) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{72, 0}
+ return fileDescriptor_6872a91dcb80f8dc, []int{76, 0}
}
func (m *Action_SaveFindings) XXX_Unmarshal(b []byte) error {
@@ -8839,7 +9346,7 @@ func (m *Action_PublishToPubSub) Reset() { *m = Action_PublishToPubSub{}
func (m *Action_PublishToPubSub) String() string { return proto.CompactTextString(m) }
func (*Action_PublishToPubSub) ProtoMessage() {}
func (*Action_PublishToPubSub) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{72, 1}
+ return fileDescriptor_6872a91dcb80f8dc, []int{76, 1}
}
func (m *Action_PublishToPubSub) XXX_Unmarshal(b []byte) error {
@@ -8887,7 +9394,7 @@ func (m *Action_PublishSummaryToCscc) Reset() { *m = Action_PublishSumma
func (m *Action_PublishSummaryToCscc) String() string { return proto.CompactTextString(m) }
func (*Action_PublishSummaryToCscc) ProtoMessage() {}
func (*Action_PublishSummaryToCscc) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{72, 2}
+ return fileDescriptor_6872a91dcb80f8dc, []int{76, 2}
}
func (m *Action_PublishSummaryToCscc) XXX_Unmarshal(b []byte) error {
@@ -8930,7 +9437,7 @@ func (m *Action_PublishFindingsToCloudDataCatalog) Reset() {
func (m *Action_PublishFindingsToCloudDataCatalog) String() string { return proto.CompactTextString(m) }
func (*Action_PublishFindingsToCloudDataCatalog) ProtoMessage() {}
func (*Action_PublishFindingsToCloudDataCatalog) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{72, 3}
+ return fileDescriptor_6872a91dcb80f8dc, []int{76, 3}
}
func (m *Action_PublishFindingsToCloudDataCatalog) XXX_Unmarshal(b []byte) error {
@@ -8963,7 +9470,7 @@ func (m *Action_JobNotificationEmails) Reset() { *m = Action_JobNotifica
func (m *Action_JobNotificationEmails) String() string { return proto.CompactTextString(m) }
func (*Action_JobNotificationEmails) ProtoMessage() {}
func (*Action_JobNotificationEmails) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{72, 4}
+ return fileDescriptor_6872a91dcb80f8dc, []int{76, 4}
}
func (m *Action_JobNotificationEmails) XXX_Unmarshal(b []byte) error {
@@ -8998,7 +9505,7 @@ func (m *Action_PublishToStackdriver) Reset() { *m = Action_PublishToSta
func (m *Action_PublishToStackdriver) String() string { return proto.CompactTextString(m) }
func (*Action_PublishToStackdriver) ProtoMessage() {}
func (*Action_PublishToStackdriver) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{72, 5}
+ return fileDescriptor_6872a91dcb80f8dc, []int{76, 5}
}
func (m *Action_PublishToStackdriver) XXX_Unmarshal(b []byte) error {
@@ -9043,7 +9550,7 @@ func (m *CreateInspectTemplateRequest) Reset() { *m = CreateInspectTempl
func (m *CreateInspectTemplateRequest) String() string { return proto.CompactTextString(m) }
func (*CreateInspectTemplateRequest) ProtoMessage() {}
func (*CreateInspectTemplateRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{73}
+ return fileDescriptor_6872a91dcb80f8dc, []int{77}
}
func (m *CreateInspectTemplateRequest) XXX_Unmarshal(b []byte) error {
@@ -9094,8 +9601,8 @@ func (m *CreateInspectTemplateRequest) GetLocationId() string {
// Request message for UpdateInspectTemplate.
type UpdateInspectTemplateRequest struct {
- // Required. Resource name of organization and inspectTemplate to be updated, for
- // example `organizations/433245324/inspectTemplates/432452342` or
+ // Required. Resource name of organization and inspectTemplate to be updated,
+ // for example `organizations/433245324/inspectTemplates/432452342` or
// projects/project-id/inspectTemplates/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// New InspectTemplate value.
@@ -9111,7 +9618,7 @@ func (m *UpdateInspectTemplateRequest) Reset() { *m = UpdateInspectTempl
func (m *UpdateInspectTemplateRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateInspectTemplateRequest) ProtoMessage() {}
func (*UpdateInspectTemplateRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{74}
+ return fileDescriptor_6872a91dcb80f8dc, []int{78}
}
func (m *UpdateInspectTemplateRequest) XXX_Unmarshal(b []byte) error {
@@ -9155,8 +9662,8 @@ func (m *UpdateInspectTemplateRequest) GetUpdateMask() *field_mask.FieldMask {
// Request message for GetInspectTemplate.
type GetInspectTemplateRequest struct {
- // Required. Resource name of the organization and inspectTemplate to be read, for
- // example `organizations/433245324/inspectTemplates/432452342` or
+ // Required. Resource name of the organization and inspectTemplate to be read,
+ // for example `organizations/433245324/inspectTemplates/432452342` or
// projects/project-id/inspectTemplates/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -9168,7 +9675,7 @@ func (m *GetInspectTemplateRequest) Reset() { *m = GetInspectTemplateReq
func (m *GetInspectTemplateRequest) String() string { return proto.CompactTextString(m) }
func (*GetInspectTemplateRequest) ProtoMessage() {}
func (*GetInspectTemplateRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{75}
+ return fileDescriptor_6872a91dcb80f8dc, []int{79}
}
func (m *GetInspectTemplateRequest) XXX_Unmarshal(b []byte) error {
@@ -9233,7 +9740,7 @@ func (m *ListInspectTemplatesRequest) Reset() { *m = ListInspectTemplate
func (m *ListInspectTemplatesRequest) String() string { return proto.CompactTextString(m) }
func (*ListInspectTemplatesRequest) ProtoMessage() {}
func (*ListInspectTemplatesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{76}
+ return fileDescriptor_6872a91dcb80f8dc, []int{80}
}
func (m *ListInspectTemplatesRequest) XXX_Unmarshal(b []byte) error {
@@ -9305,7 +9812,7 @@ func (m *ListInspectTemplatesResponse) Reset() { *m = ListInspectTemplat
func (m *ListInspectTemplatesResponse) String() string { return proto.CompactTextString(m) }
func (*ListInspectTemplatesResponse) ProtoMessage() {}
func (*ListInspectTemplatesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{77}
+ return fileDescriptor_6872a91dcb80f8dc, []int{81}
}
func (m *ListInspectTemplatesResponse) XXX_Unmarshal(b []byte) error {
@@ -9342,9 +9849,9 @@ func (m *ListInspectTemplatesResponse) GetNextPageToken() string {
// Request message for DeleteInspectTemplate.
type DeleteInspectTemplateRequest struct {
- // Required. Resource name of the organization and inspectTemplate to be deleted, for
- // example `organizations/433245324/inspectTemplates/432452342` or
- // projects/project-id/inspectTemplates/432452342.
+ // Required. Resource name of the organization and inspectTemplate to be
+ // deleted, for example `organizations/433245324/inspectTemplates/432452342`
+ // or projects/project-id/inspectTemplates/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -9355,7 +9862,7 @@ func (m *DeleteInspectTemplateRequest) Reset() { *m = DeleteInspectTempl
func (m *DeleteInspectTemplateRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteInspectTemplateRequest) ProtoMessage() {}
func (*DeleteInspectTemplateRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{78}
+ return fileDescriptor_6872a91dcb80f8dc, []int{82}
}
func (m *DeleteInspectTemplateRequest) XXX_Unmarshal(b []byte) error {
@@ -9406,7 +9913,7 @@ func (m *CreateJobTriggerRequest) Reset() { *m = CreateJobTriggerRequest
func (m *CreateJobTriggerRequest) String() string { return proto.CompactTextString(m) }
func (*CreateJobTriggerRequest) ProtoMessage() {}
func (*CreateJobTriggerRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{79}
+ return fileDescriptor_6872a91dcb80f8dc, []int{83}
}
func (m *CreateJobTriggerRequest) XXX_Unmarshal(b []byte) error {
@@ -9469,7 +9976,7 @@ func (m *ActivateJobTriggerRequest) Reset() { *m = ActivateJobTriggerReq
func (m *ActivateJobTriggerRequest) String() string { return proto.CompactTextString(m) }
func (*ActivateJobTriggerRequest) ProtoMessage() {}
func (*ActivateJobTriggerRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{80}
+ return fileDescriptor_6872a91dcb80f8dc, []int{84}
}
func (m *ActivateJobTriggerRequest) XXX_Unmarshal(b []byte) error {
@@ -9515,7 +10022,7 @@ func (m *UpdateJobTriggerRequest) Reset() { *m = UpdateJobTriggerRequest
func (m *UpdateJobTriggerRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateJobTriggerRequest) ProtoMessage() {}
func (*UpdateJobTriggerRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{81}
+ return fileDescriptor_6872a91dcb80f8dc, []int{85}
}
func (m *UpdateJobTriggerRequest) XXX_Unmarshal(b []byte) error {
@@ -9571,7 +10078,7 @@ func (m *GetJobTriggerRequest) Reset() { *m = GetJobTriggerRequest{} }
func (m *GetJobTriggerRequest) String() string { return proto.CompactTextString(m) }
func (*GetJobTriggerRequest) ProtoMessage() {}
func (*GetJobTriggerRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{82}
+ return fileDescriptor_6872a91dcb80f8dc, []int{86}
}
func (m *GetJobTriggerRequest) XXX_Unmarshal(b []byte) error {
@@ -9628,7 +10135,7 @@ func (m *CreateDlpJobRequest) Reset() { *m = CreateDlpJobRequest{} }
func (m *CreateDlpJobRequest) String() string { return proto.CompactTextString(m) }
func (*CreateDlpJobRequest) ProtoMessage() {}
func (*CreateDlpJobRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{83}
+ return fileDescriptor_6872a91dcb80f8dc, []int{87}
}
func (m *CreateDlpJobRequest) XXX_Unmarshal(b []byte) error {
@@ -9778,7 +10285,7 @@ func (m *ListJobTriggersRequest) Reset() { *m = ListJobTriggersRequest{}
func (m *ListJobTriggersRequest) String() string { return proto.CompactTextString(m) }
func (*ListJobTriggersRequest) ProtoMessage() {}
func (*ListJobTriggersRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{84}
+ return fileDescriptor_6872a91dcb80f8dc, []int{88}
}
func (m *ListJobTriggersRequest) XXX_Unmarshal(b []byte) error {
@@ -9857,7 +10364,7 @@ func (m *ListJobTriggersResponse) Reset() { *m = ListJobTriggersResponse
func (m *ListJobTriggersResponse) String() string { return proto.CompactTextString(m) }
func (*ListJobTriggersResponse) ProtoMessage() {}
func (*ListJobTriggersResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{85}
+ return fileDescriptor_6872a91dcb80f8dc, []int{89}
}
func (m *ListJobTriggersResponse) XXX_Unmarshal(b []byte) error {
@@ -9906,7 +10413,7 @@ func (m *DeleteJobTriggerRequest) Reset() { *m = DeleteJobTriggerRequest
func (m *DeleteJobTriggerRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteJobTriggerRequest) ProtoMessage() {}
func (*DeleteJobTriggerRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{86}
+ return fileDescriptor_6872a91dcb80f8dc, []int{90}
}
func (m *DeleteJobTriggerRequest) XXX_Unmarshal(b []byte) error {
@@ -9955,7 +10462,7 @@ func (m *InspectJobConfig) Reset() { *m = InspectJobConfig{} }
func (m *InspectJobConfig) String() string { return proto.CompactTextString(m) }
func (*InspectJobConfig) ProtoMessage() {}
func (*InspectJobConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{87}
+ return fileDescriptor_6872a91dcb80f8dc, []int{91}
}
func (m *InspectJobConfig) XXX_Unmarshal(b []byte) error {
@@ -10036,7 +10543,7 @@ func (m *DlpJob) Reset() { *m = DlpJob{} }
func (m *DlpJob) String() string { return proto.CompactTextString(m) }
func (*DlpJob) ProtoMessage() {}
func (*DlpJob) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{88}
+ return fileDescriptor_6872a91dcb80f8dc, []int{92}
}
func (m *DlpJob) XXX_Unmarshal(b []byte) error {
@@ -10171,7 +10678,7 @@ func (m *GetDlpJobRequest) Reset() { *m = GetDlpJobRequest{} }
func (m *GetDlpJobRequest) String() string { return proto.CompactTextString(m) }
func (*GetDlpJobRequest) ProtoMessage() {}
func (*GetDlpJobRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{89}
+ return fileDescriptor_6872a91dcb80f8dc, []int{93}
}
func (m *GetDlpJobRequest) XXX_Unmarshal(b []byte) error {
@@ -10264,7 +10771,7 @@ func (m *ListDlpJobsRequest) Reset() { *m = ListDlpJobsRequest{} }
func (m *ListDlpJobsRequest) String() string { return proto.CompactTextString(m) }
func (*ListDlpJobsRequest) ProtoMessage() {}
func (*ListDlpJobsRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{90}
+ return fileDescriptor_6872a91dcb80f8dc, []int{94}
}
func (m *ListDlpJobsRequest) XXX_Unmarshal(b []byte) error {
@@ -10349,7 +10856,7 @@ func (m *ListDlpJobsResponse) Reset() { *m = ListDlpJobsResponse{} }
func (m *ListDlpJobsResponse) String() string { return proto.CompactTextString(m) }
func (*ListDlpJobsResponse) ProtoMessage() {}
func (*ListDlpJobsResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{91}
+ return fileDescriptor_6872a91dcb80f8dc, []int{95}
}
func (m *ListDlpJobsResponse) XXX_Unmarshal(b []byte) error {
@@ -10397,7 +10904,7 @@ func (m *CancelDlpJobRequest) Reset() { *m = CancelDlpJobRequest{} }
func (m *CancelDlpJobRequest) String() string { return proto.CompactTextString(m) }
func (*CancelDlpJobRequest) ProtoMessage() {}
func (*CancelDlpJobRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{92}
+ return fileDescriptor_6872a91dcb80f8dc, []int{96}
}
func (m *CancelDlpJobRequest) XXX_Unmarshal(b []byte) error {
@@ -10425,6 +10932,47 @@ func (m *CancelDlpJobRequest) GetName() string {
return ""
}
+// The request message for finishing a DLP hybrid job.
+type FinishDlpJobRequest struct {
+ // Required. The name of the DlpJob resource to be cancelled.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *FinishDlpJobRequest) Reset() { *m = FinishDlpJobRequest{} }
+func (m *FinishDlpJobRequest) String() string { return proto.CompactTextString(m) }
+func (*FinishDlpJobRequest) ProtoMessage() {}
+func (*FinishDlpJobRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{97}
+}
+
+func (m *FinishDlpJobRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_FinishDlpJobRequest.Unmarshal(m, b)
+}
+func (m *FinishDlpJobRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_FinishDlpJobRequest.Marshal(b, m, deterministic)
+}
+func (m *FinishDlpJobRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_FinishDlpJobRequest.Merge(m, src)
+}
+func (m *FinishDlpJobRequest) XXX_Size() int {
+ return xxx_messageInfo_FinishDlpJobRequest.Size(m)
+}
+func (m *FinishDlpJobRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_FinishDlpJobRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_FinishDlpJobRequest proto.InternalMessageInfo
+
+func (m *FinishDlpJobRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
// The request message for deleting a DLP job.
type DeleteDlpJobRequest struct {
// Required. The name of the DlpJob resource to be deleted.
@@ -10438,7 +10986,7 @@ func (m *DeleteDlpJobRequest) Reset() { *m = DeleteDlpJobRequest{} }
func (m *DeleteDlpJobRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteDlpJobRequest) ProtoMessage() {}
func (*DeleteDlpJobRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{93}
+ return fileDescriptor_6872a91dcb80f8dc, []int{98}
}
func (m *DeleteDlpJobRequest) XXX_Unmarshal(b []byte) error {
@@ -10490,7 +11038,7 @@ func (m *CreateDeidentifyTemplateRequest) Reset() { *m = CreateDeidentif
func (m *CreateDeidentifyTemplateRequest) String() string { return proto.CompactTextString(m) }
func (*CreateDeidentifyTemplateRequest) ProtoMessage() {}
func (*CreateDeidentifyTemplateRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{94}
+ return fileDescriptor_6872a91dcb80f8dc, []int{99}
}
func (m *CreateDeidentifyTemplateRequest) XXX_Unmarshal(b []byte) error {
@@ -10541,8 +11089,9 @@ func (m *CreateDeidentifyTemplateRequest) GetLocationId() string {
// Request message for UpdateDeidentifyTemplate.
type UpdateDeidentifyTemplateRequest struct {
- // Required. Resource name of organization and deidentify template to be updated, for
- // example `organizations/433245324/deidentifyTemplates/432452342` or
+ // Required. Resource name of organization and deidentify template to be
+ // updated, for example
+ // `organizations/433245324/deidentifyTemplates/432452342` or
// projects/project-id/deidentifyTemplates/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// New DeidentifyTemplate value.
@@ -10558,7 +11107,7 @@ func (m *UpdateDeidentifyTemplateRequest) Reset() { *m = UpdateDeidentif
func (m *UpdateDeidentifyTemplateRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateDeidentifyTemplateRequest) ProtoMessage() {}
func (*UpdateDeidentifyTemplateRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{95}
+ return fileDescriptor_6872a91dcb80f8dc, []int{100}
}
func (m *UpdateDeidentifyTemplateRequest) XXX_Unmarshal(b []byte) error {
@@ -10602,9 +11151,9 @@ func (m *UpdateDeidentifyTemplateRequest) GetUpdateMask() *field_mask.FieldMask
// Request message for GetDeidentifyTemplate.
type GetDeidentifyTemplateRequest struct {
- // Required. Resource name of the organization and deidentify template to be read, for
- // example `organizations/433245324/deidentifyTemplates/432452342` or
- // projects/project-id/deidentifyTemplates/432452342.
+ // Required. Resource name of the organization and deidentify template to be
+ // read, for example `organizations/433245324/deidentifyTemplates/432452342`
+ // or projects/project-id/deidentifyTemplates/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -10615,7 +11164,7 @@ func (m *GetDeidentifyTemplateRequest) Reset() { *m = GetDeidentifyTempl
func (m *GetDeidentifyTemplateRequest) String() string { return proto.CompactTextString(m) }
func (*GetDeidentifyTemplateRequest) ProtoMessage() {}
func (*GetDeidentifyTemplateRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{96}
+ return fileDescriptor_6872a91dcb80f8dc, []int{101}
}
func (m *GetDeidentifyTemplateRequest) XXX_Unmarshal(b []byte) error {
@@ -10680,7 +11229,7 @@ func (m *ListDeidentifyTemplatesRequest) Reset() { *m = ListDeidentifyTe
func (m *ListDeidentifyTemplatesRequest) String() string { return proto.CompactTextString(m) }
func (*ListDeidentifyTemplatesRequest) ProtoMessage() {}
func (*ListDeidentifyTemplatesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{97}
+ return fileDescriptor_6872a91dcb80f8dc, []int{102}
}
func (m *ListDeidentifyTemplatesRequest) XXX_Unmarshal(b []byte) error {
@@ -10753,7 +11302,7 @@ func (m *ListDeidentifyTemplatesResponse) Reset() { *m = ListDeidentifyT
func (m *ListDeidentifyTemplatesResponse) String() string { return proto.CompactTextString(m) }
func (*ListDeidentifyTemplatesResponse) ProtoMessage() {}
func (*ListDeidentifyTemplatesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{98}
+ return fileDescriptor_6872a91dcb80f8dc, []int{103}
}
func (m *ListDeidentifyTemplatesResponse) XXX_Unmarshal(b []byte) error {
@@ -10790,8 +11339,9 @@ func (m *ListDeidentifyTemplatesResponse) GetNextPageToken() string {
// Request message for DeleteDeidentifyTemplate.
type DeleteDeidentifyTemplateRequest struct {
- // Required. Resource name of the organization and deidentify template to be deleted,
- // for example `organizations/433245324/deidentifyTemplates/432452342` or
+ // Required. Resource name of the organization and deidentify template to be
+ // deleted, for example
+ // `organizations/433245324/deidentifyTemplates/432452342` or
// projects/project-id/deidentifyTemplates/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -10803,7 +11353,7 @@ func (m *DeleteDeidentifyTemplateRequest) Reset() { *m = DeleteDeidentif
func (m *DeleteDeidentifyTemplateRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteDeidentifyTemplateRequest) ProtoMessage() {}
func (*DeleteDeidentifyTemplateRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{99}
+ return fileDescriptor_6872a91dcb80f8dc, []int{104}
}
func (m *DeleteDeidentifyTemplateRequest) XXX_Unmarshal(b []byte) error {
@@ -10856,7 +11406,7 @@ func (m *LargeCustomDictionaryConfig) Reset() { *m = LargeCustomDictiona
func (m *LargeCustomDictionaryConfig) String() string { return proto.CompactTextString(m) }
func (*LargeCustomDictionaryConfig) ProtoMessage() {}
func (*LargeCustomDictionaryConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{100}
+ return fileDescriptor_6872a91dcb80f8dc, []int{105}
}
func (m *LargeCustomDictionaryConfig) XXX_Unmarshal(b []byte) error {
@@ -10942,7 +11492,7 @@ func (m *LargeCustomDictionaryStats) Reset() { *m = LargeCustomDictionar
func (m *LargeCustomDictionaryStats) String() string { return proto.CompactTextString(m) }
func (*LargeCustomDictionaryStats) ProtoMessage() {}
func (*LargeCustomDictionaryStats) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{101}
+ return fileDescriptor_6872a91dcb80f8dc, []int{106}
}
func (m *LargeCustomDictionaryStats) XXX_Unmarshal(b []byte) error {
@@ -10982,6 +11532,8 @@ type StoredInfoTypeConfig struct {
//
// Types that are valid to be assigned to Type:
// *StoredInfoTypeConfig_LargeCustomDictionary
+ // *StoredInfoTypeConfig_Dictionary
+ // *StoredInfoTypeConfig_Regex
Type isStoredInfoTypeConfig_Type `protobuf_oneof:"type"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -10992,7 +11544,7 @@ func (m *StoredInfoTypeConfig) Reset() { *m = StoredInfoTypeConfig{} }
func (m *StoredInfoTypeConfig) String() string { return proto.CompactTextString(m) }
func (*StoredInfoTypeConfig) ProtoMessage() {}
func (*StoredInfoTypeConfig) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{102}
+ return fileDescriptor_6872a91dcb80f8dc, []int{107}
}
func (m *StoredInfoTypeConfig) XXX_Unmarshal(b []byte) error {
@@ -11035,8 +11587,20 @@ type StoredInfoTypeConfig_LargeCustomDictionary struct {
LargeCustomDictionary *LargeCustomDictionaryConfig `protobuf:"bytes,3,opt,name=large_custom_dictionary,json=largeCustomDictionary,proto3,oneof"`
}
+type StoredInfoTypeConfig_Dictionary struct {
+ Dictionary *CustomInfoType_Dictionary `protobuf:"bytes,4,opt,name=dictionary,proto3,oneof"`
+}
+
+type StoredInfoTypeConfig_Regex struct {
+ Regex *CustomInfoType_Regex `protobuf:"bytes,5,opt,name=regex,proto3,oneof"`
+}
+
func (*StoredInfoTypeConfig_LargeCustomDictionary) isStoredInfoTypeConfig_Type() {}
+func (*StoredInfoTypeConfig_Dictionary) isStoredInfoTypeConfig_Type() {}
+
+func (*StoredInfoTypeConfig_Regex) isStoredInfoTypeConfig_Type() {}
+
func (m *StoredInfoTypeConfig) GetType() isStoredInfoTypeConfig_Type {
if m != nil {
return m.Type
@@ -11051,10 +11615,26 @@ func (m *StoredInfoTypeConfig) GetLargeCustomDictionary() *LargeCustomDictionary
return nil
}
+func (m *StoredInfoTypeConfig) GetDictionary() *CustomInfoType_Dictionary {
+ if x, ok := m.GetType().(*StoredInfoTypeConfig_Dictionary); ok {
+ return x.Dictionary
+ }
+ return nil
+}
+
+func (m *StoredInfoTypeConfig) GetRegex() *CustomInfoType_Regex {
+ if x, ok := m.GetType().(*StoredInfoTypeConfig_Regex); ok {
+ return x.Regex
+ }
+ return nil
+}
+
// XXX_OneofWrappers is for the internal use of the proto package.
func (*StoredInfoTypeConfig) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*StoredInfoTypeConfig_LargeCustomDictionary)(nil),
+ (*StoredInfoTypeConfig_Dictionary)(nil),
+ (*StoredInfoTypeConfig_Regex)(nil),
}
}
@@ -11074,7 +11654,7 @@ func (m *StoredInfoTypeStats) Reset() { *m = StoredInfoTypeStats{} }
func (m *StoredInfoTypeStats) String() string { return proto.CompactTextString(m) }
func (*StoredInfoTypeStats) ProtoMessage() {}
func (*StoredInfoTypeStats) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{103}
+ return fileDescriptor_6872a91dcb80f8dc, []int{108}
}
func (m *StoredInfoTypeStats) XXX_Unmarshal(b []byte) error {
@@ -11162,7 +11742,7 @@ func (m *StoredInfoTypeVersion) Reset() { *m = StoredInfoTypeVersion{} }
func (m *StoredInfoTypeVersion) String() string { return proto.CompactTextString(m) }
func (*StoredInfoTypeVersion) ProtoMessage() {}
func (*StoredInfoTypeVersion) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{104}
+ return fileDescriptor_6872a91dcb80f8dc, []int{109}
}
func (m *StoredInfoTypeVersion) XXX_Unmarshal(b []byte) error {
@@ -11237,7 +11817,7 @@ func (m *StoredInfoType) Reset() { *m = StoredInfoType{} }
func (m *StoredInfoType) String() string { return proto.CompactTextString(m) }
func (*StoredInfoType) ProtoMessage() {}
func (*StoredInfoType) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{105}
+ return fileDescriptor_6872a91dcb80f8dc, []int{110}
}
func (m *StoredInfoType) XXX_Unmarshal(b []byte) error {
@@ -11303,7 +11883,7 @@ func (m *CreateStoredInfoTypeRequest) Reset() { *m = CreateStoredInfoTyp
func (m *CreateStoredInfoTypeRequest) String() string { return proto.CompactTextString(m) }
func (*CreateStoredInfoTypeRequest) ProtoMessage() {}
func (*CreateStoredInfoTypeRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{106}
+ return fileDescriptor_6872a91dcb80f8dc, []int{111}
}
func (m *CreateStoredInfoTypeRequest) XXX_Unmarshal(b []byte) error {
@@ -11354,8 +11934,8 @@ func (m *CreateStoredInfoTypeRequest) GetLocationId() string {
// Request message for UpdateStoredInfoType.
type UpdateStoredInfoTypeRequest struct {
- // Required. Resource name of organization and storedInfoType to be updated, for
- // example `organizations/433245324/storedInfoTypes/432452342` or
+ // Required. Resource name of organization and storedInfoType to be updated,
+ // for example `organizations/433245324/storedInfoTypes/432452342` or
// projects/project-id/storedInfoTypes/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Updated configuration for the storedInfoType. If not provided, a new
@@ -11373,7 +11953,7 @@ func (m *UpdateStoredInfoTypeRequest) Reset() { *m = UpdateStoredInfoTyp
func (m *UpdateStoredInfoTypeRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateStoredInfoTypeRequest) ProtoMessage() {}
func (*UpdateStoredInfoTypeRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{107}
+ return fileDescriptor_6872a91dcb80f8dc, []int{112}
}
func (m *UpdateStoredInfoTypeRequest) XXX_Unmarshal(b []byte) error {
@@ -11417,8 +11997,8 @@ func (m *UpdateStoredInfoTypeRequest) GetUpdateMask() *field_mask.FieldMask {
// Request message for GetStoredInfoType.
type GetStoredInfoTypeRequest struct {
- // Required. Resource name of the organization and storedInfoType to be read, for
- // example `organizations/433245324/storedInfoTypes/432452342` or
+ // Required. Resource name of the organization and storedInfoType to be read,
+ // for example `organizations/433245324/storedInfoTypes/432452342` or
// projects/project-id/storedInfoTypes/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -11430,7 +12010,7 @@ func (m *GetStoredInfoTypeRequest) Reset() { *m = GetStoredInfoTypeReque
func (m *GetStoredInfoTypeRequest) String() string { return proto.CompactTextString(m) }
func (*GetStoredInfoTypeRequest) ProtoMessage() {}
func (*GetStoredInfoTypeRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{108}
+ return fileDescriptor_6872a91dcb80f8dc, []int{113}
}
func (m *GetStoredInfoTypeRequest) XXX_Unmarshal(b []byte) error {
@@ -11496,7 +12076,7 @@ func (m *ListStoredInfoTypesRequest) Reset() { *m = ListStoredInfoTypesR
func (m *ListStoredInfoTypesRequest) String() string { return proto.CompactTextString(m) }
func (*ListStoredInfoTypesRequest) ProtoMessage() {}
func (*ListStoredInfoTypesRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{109}
+ return fileDescriptor_6872a91dcb80f8dc, []int{114}
}
func (m *ListStoredInfoTypesRequest) XXX_Unmarshal(b []byte) error {
@@ -11568,7 +12148,7 @@ func (m *ListStoredInfoTypesResponse) Reset() { *m = ListStoredInfoTypes
func (m *ListStoredInfoTypesResponse) String() string { return proto.CompactTextString(m) }
func (*ListStoredInfoTypesResponse) ProtoMessage() {}
func (*ListStoredInfoTypesResponse) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{110}
+ return fileDescriptor_6872a91dcb80f8dc, []int{115}
}
func (m *ListStoredInfoTypesResponse) XXX_Unmarshal(b []byte) error {
@@ -11605,8 +12185,8 @@ func (m *ListStoredInfoTypesResponse) GetNextPageToken() string {
// Request message for DeleteStoredInfoType.
type DeleteStoredInfoTypeRequest struct {
- // Required. Resource name of the organization and storedInfoType to be deleted, for
- // example `organizations/433245324/storedInfoTypes/432452342` or
+ // Required. Resource name of the organization and storedInfoType to be
+ // deleted, for example `organizations/433245324/storedInfoTypes/432452342` or
// projects/project-id/storedInfoTypes/432452342.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -11618,7 +12198,7 @@ func (m *DeleteStoredInfoTypeRequest) Reset() { *m = DeleteStoredInfoTyp
func (m *DeleteStoredInfoTypeRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteStoredInfoTypeRequest) ProtoMessage() {}
func (*DeleteStoredInfoTypeRequest) Descriptor() ([]byte, []int) {
- return fileDescriptor_6872a91dcb80f8dc, []int{111}
+ return fileDescriptor_6872a91dcb80f8dc, []int{116}
}
func (m *DeleteStoredInfoTypeRequest) XXX_Unmarshal(b []byte) error {
@@ -11646,6 +12226,291 @@ func (m *DeleteStoredInfoTypeRequest) GetName() string {
return ""
}
+// Request to search for potentially sensitive info in a custom location.
+type HybridInspectJobTriggerRequest struct {
+ // Required. Resource name of the trigger to execute a hybrid inspect on, for
+ // example `projects/dlp-test-project/jobTriggers/53234423`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The item to inspect.
+ HybridItem *HybridContentItem `protobuf:"bytes,3,opt,name=hybrid_item,json=hybridItem,proto3" json:"hybrid_item,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *HybridInspectJobTriggerRequest) Reset() { *m = HybridInspectJobTriggerRequest{} }
+func (m *HybridInspectJobTriggerRequest) String() string { return proto.CompactTextString(m) }
+func (*HybridInspectJobTriggerRequest) ProtoMessage() {}
+func (*HybridInspectJobTriggerRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{117}
+}
+
+func (m *HybridInspectJobTriggerRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_HybridInspectJobTriggerRequest.Unmarshal(m, b)
+}
+func (m *HybridInspectJobTriggerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_HybridInspectJobTriggerRequest.Marshal(b, m, deterministic)
+}
+func (m *HybridInspectJobTriggerRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_HybridInspectJobTriggerRequest.Merge(m, src)
+}
+func (m *HybridInspectJobTriggerRequest) XXX_Size() int {
+ return xxx_messageInfo_HybridInspectJobTriggerRequest.Size(m)
+}
+func (m *HybridInspectJobTriggerRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_HybridInspectJobTriggerRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_HybridInspectJobTriggerRequest proto.InternalMessageInfo
+
+func (m *HybridInspectJobTriggerRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *HybridInspectJobTriggerRequest) GetHybridItem() *HybridContentItem {
+ if m != nil {
+ return m.HybridItem
+ }
+ return nil
+}
+
+// Request to search for potentially sensitive info in a custom location.
+type HybridInspectDlpJobRequest struct {
+ // Required. Resource name of the job to execute a hybrid inspect on, for
+ // example `projects/dlp-test-project/dlpJob/53234423`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The item to inspect.
+ HybridItem *HybridContentItem `protobuf:"bytes,3,opt,name=hybrid_item,json=hybridItem,proto3" json:"hybrid_item,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *HybridInspectDlpJobRequest) Reset() { *m = HybridInspectDlpJobRequest{} }
+func (m *HybridInspectDlpJobRequest) String() string { return proto.CompactTextString(m) }
+func (*HybridInspectDlpJobRequest) ProtoMessage() {}
+func (*HybridInspectDlpJobRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{118}
+}
+
+func (m *HybridInspectDlpJobRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_HybridInspectDlpJobRequest.Unmarshal(m, b)
+}
+func (m *HybridInspectDlpJobRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_HybridInspectDlpJobRequest.Marshal(b, m, deterministic)
+}
+func (m *HybridInspectDlpJobRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_HybridInspectDlpJobRequest.Merge(m, src)
+}
+func (m *HybridInspectDlpJobRequest) XXX_Size() int {
+ return xxx_messageInfo_HybridInspectDlpJobRequest.Size(m)
+}
+func (m *HybridInspectDlpJobRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_HybridInspectDlpJobRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_HybridInspectDlpJobRequest proto.InternalMessageInfo
+
+func (m *HybridInspectDlpJobRequest) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *HybridInspectDlpJobRequest) GetHybridItem() *HybridContentItem {
+ if m != nil {
+ return m.HybridItem
+ }
+ return nil
+}
+
+// An individual hybrid item to inspect. Will be stored temporarily during
+// processing.
+type HybridContentItem struct {
+ // The item to inspect.
+ Item *ContentItem `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
+ // Supplementary information that will be added to each finding.
+ FindingDetails *HybridFindingDetails `protobuf:"bytes,2,opt,name=finding_details,json=findingDetails,proto3" json:"finding_details,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *HybridContentItem) Reset() { *m = HybridContentItem{} }
+func (m *HybridContentItem) String() string { return proto.CompactTextString(m) }
+func (*HybridContentItem) ProtoMessage() {}
+func (*HybridContentItem) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{119}
+}
+
+func (m *HybridContentItem) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_HybridContentItem.Unmarshal(m, b)
+}
+func (m *HybridContentItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_HybridContentItem.Marshal(b, m, deterministic)
+}
+func (m *HybridContentItem) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_HybridContentItem.Merge(m, src)
+}
+func (m *HybridContentItem) XXX_Size() int {
+ return xxx_messageInfo_HybridContentItem.Size(m)
+}
+func (m *HybridContentItem) XXX_DiscardUnknown() {
+ xxx_messageInfo_HybridContentItem.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_HybridContentItem proto.InternalMessageInfo
+
+func (m *HybridContentItem) GetItem() *ContentItem {
+ if m != nil {
+ return m.Item
+ }
+ return nil
+}
+
+func (m *HybridContentItem) GetFindingDetails() *HybridFindingDetails {
+ if m != nil {
+ return m.FindingDetails
+ }
+ return nil
+}
+
+// Populate to associate additional data with each finding.
+type HybridFindingDetails struct {
+ // Details about the container where the content being inspected is from.
+ ContainerDetails *Container `protobuf:"bytes,1,opt,name=container_details,json=containerDetails,proto3" json:"container_details,omitempty"`
+ // Offset in bytes of the line, from the beginning of the file, where the
+ // finding is located. Populate if the item being scanned is only part of a
+ // bigger item, such as a shard of a file and you want to track the absolute
+ // position of the finding.
+ FileOffset int64 `protobuf:"varint,2,opt,name=file_offset,json=fileOffset,proto3" json:"file_offset,omitempty"`
+ // Offset of the row for tables. Populate if the row(s) being scanned are
+ // part of a bigger dataset and you want to keep track of their absolute
+ // position.
+ RowOffset int64 `protobuf:"varint,3,opt,name=row_offset,json=rowOffset,proto3" json:"row_offset,omitempty"`
+ // If the container is a table, additional information to make findings
+ // meaningful such as the columns that are primary keys. If not known ahead
+ // of time, can also be set within each inspect hybrid call and the two
+ // will be merged. Note that identifying_fields will only be stored to
+ // BigQuery, and only if the BigQuery action has been included.
+ TableOptions *TableOptions `protobuf:"bytes,4,opt,name=table_options,json=tableOptions,proto3" json:"table_options,omitempty"`
+ // Labels to represent user provided metadata about the data being inspected.
+ // If configured by the job, some key values may be required.
+ // The labels associated with `Finding`'s produced by hybrid
+ // inspection.
+ //
+ // Label keys must be between 1 and 63 characters long and must conform
+ // to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
+ //
+ // Label values must be between 0 and 63 characters long and must conform
+ // to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
+ //
+ // No more than 10 labels can be associated with a given finding.
+ //
+ // Example: "environment" : "production"
+ // Example: "pipeline" : "etl"
+ Labels map[string]string `protobuf:"bytes,5,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *HybridFindingDetails) Reset() { *m = HybridFindingDetails{} }
+func (m *HybridFindingDetails) String() string { return proto.CompactTextString(m) }
+func (*HybridFindingDetails) ProtoMessage() {}
+func (*HybridFindingDetails) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{120}
+}
+
+func (m *HybridFindingDetails) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_HybridFindingDetails.Unmarshal(m, b)
+}
+func (m *HybridFindingDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_HybridFindingDetails.Marshal(b, m, deterministic)
+}
+func (m *HybridFindingDetails) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_HybridFindingDetails.Merge(m, src)
+}
+func (m *HybridFindingDetails) XXX_Size() int {
+ return xxx_messageInfo_HybridFindingDetails.Size(m)
+}
+func (m *HybridFindingDetails) XXX_DiscardUnknown() {
+ xxx_messageInfo_HybridFindingDetails.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_HybridFindingDetails proto.InternalMessageInfo
+
+func (m *HybridFindingDetails) GetContainerDetails() *Container {
+ if m != nil {
+ return m.ContainerDetails
+ }
+ return nil
+}
+
+func (m *HybridFindingDetails) GetFileOffset() int64 {
+ if m != nil {
+ return m.FileOffset
+ }
+ return 0
+}
+
+func (m *HybridFindingDetails) GetRowOffset() int64 {
+ if m != nil {
+ return m.RowOffset
+ }
+ return 0
+}
+
+func (m *HybridFindingDetails) GetTableOptions() *TableOptions {
+ if m != nil {
+ return m.TableOptions
+ }
+ return nil
+}
+
+func (m *HybridFindingDetails) GetLabels() map[string]string {
+ if m != nil {
+ return m.Labels
+ }
+ return nil
+}
+
+// Quota exceeded errors will be thrown once quota has been met.
+type HybridInspectResponse struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *HybridInspectResponse) Reset() { *m = HybridInspectResponse{} }
+func (m *HybridInspectResponse) String() string { return proto.CompactTextString(m) }
+func (*HybridInspectResponse) ProtoMessage() {}
+func (*HybridInspectResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_6872a91dcb80f8dc, []int{121}
+}
+
+func (m *HybridInspectResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_HybridInspectResponse.Unmarshal(m, b)
+}
+func (m *HybridInspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_HybridInspectResponse.Marshal(b, m, deterministic)
+}
+func (m *HybridInspectResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_HybridInspectResponse.Merge(m, src)
+}
+func (m *HybridInspectResponse) XXX_Size() int {
+ return xxx_messageInfo_HybridInspectResponse.Size(m)
+}
+func (m *HybridInspectResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_HybridInspectResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_HybridInspectResponse proto.InternalMessageInfo
+
func init() {
proto.RegisterEnum("google.privacy.dlp.v2.RelationalOperator", RelationalOperator_name, RelationalOperator_value)
proto.RegisterEnum("google.privacy.dlp.v2.MatchingType", MatchingType_name, MatchingType_value)
@@ -11675,11 +12540,13 @@ func init() {
proto.RegisterType((*Table_Row)(nil), "google.privacy.dlp.v2.Table.Row")
proto.RegisterType((*InspectResult)(nil), "google.privacy.dlp.v2.InspectResult")
proto.RegisterType((*Finding)(nil), "google.privacy.dlp.v2.Finding")
+ proto.RegisterMapType((map[string]string)(nil), "google.privacy.dlp.v2.Finding.LabelsEntry")
proto.RegisterType((*Location)(nil), "google.privacy.dlp.v2.Location")
proto.RegisterType((*ContentLocation)(nil), "google.privacy.dlp.v2.ContentLocation")
proto.RegisterType((*DocumentLocation)(nil), "google.privacy.dlp.v2.DocumentLocation")
proto.RegisterType((*RecordLocation)(nil), "google.privacy.dlp.v2.RecordLocation")
proto.RegisterType((*TableLocation)(nil), "google.privacy.dlp.v2.TableLocation")
+ proto.RegisterType((*Container)(nil), "google.privacy.dlp.v2.Container")
proto.RegisterType((*Range)(nil), "google.privacy.dlp.v2.Range")
proto.RegisterType((*ImageLocation)(nil), "google.privacy.dlp.v2.ImageLocation")
proto.RegisterType((*BoundingBox)(nil), "google.privacy.dlp.v2.BoundingBox")
@@ -11698,6 +12565,7 @@ func init() {
proto.RegisterType((*InspectDataSourceDetails)(nil), "google.privacy.dlp.v2.InspectDataSourceDetails")
proto.RegisterType((*InspectDataSourceDetails_RequestedOptions)(nil), "google.privacy.dlp.v2.InspectDataSourceDetails.RequestedOptions")
proto.RegisterType((*InspectDataSourceDetails_Result)(nil), "google.privacy.dlp.v2.InspectDataSourceDetails.Result")
+ proto.RegisterType((*HybridInspectStatistics)(nil), "google.privacy.dlp.v2.HybridInspectStatistics")
proto.RegisterType((*InfoTypeDescription)(nil), "google.privacy.dlp.v2.InfoTypeDescription")
proto.RegisterType((*ListInfoTypesRequest)(nil), "google.privacy.dlp.v2.ListInfoTypesRequest")
proto.RegisterType((*ListInfoTypesResponse)(nil), "google.privacy.dlp.v2.ListInfoTypesResponse")
@@ -11737,6 +12605,9 @@ func init() {
proto.RegisterType((*DateTime)(nil), "google.privacy.dlp.v2.DateTime")
proto.RegisterType((*DateTime_TimeZone)(nil), "google.privacy.dlp.v2.DateTime.TimeZone")
proto.RegisterType((*DeidentifyConfig)(nil), "google.privacy.dlp.v2.DeidentifyConfig")
+ proto.RegisterType((*TransformationErrorHandling)(nil), "google.privacy.dlp.v2.TransformationErrorHandling")
+ proto.RegisterType((*TransformationErrorHandling_ThrowError)(nil), "google.privacy.dlp.v2.TransformationErrorHandling.ThrowError")
+ proto.RegisterType((*TransformationErrorHandling_LeaveUntransformed)(nil), "google.privacy.dlp.v2.TransformationErrorHandling.LeaveUntransformed")
proto.RegisterType((*PrimitiveTransformation)(nil), "google.privacy.dlp.v2.PrimitiveTransformation")
proto.RegisterType((*TimePartConfig)(nil), "google.privacy.dlp.v2.TimePartConfig")
proto.RegisterType((*CryptoHashConfig)(nil), "google.privacy.dlp.v2.CryptoHashConfig")
@@ -11768,6 +12639,7 @@ func init() {
proto.RegisterType((*TransformationSummary)(nil), "google.privacy.dlp.v2.TransformationSummary")
proto.RegisterType((*TransformationSummary_SummaryResult)(nil), "google.privacy.dlp.v2.TransformationSummary.SummaryResult")
proto.RegisterType((*Schedule)(nil), "google.privacy.dlp.v2.Schedule")
+ proto.RegisterType((*Manual)(nil), "google.privacy.dlp.v2.Manual")
proto.RegisterType((*InspectTemplate)(nil), "google.privacy.dlp.v2.InspectTemplate")
proto.RegisterType((*DeidentifyTemplate)(nil), "google.privacy.dlp.v2.DeidentifyTemplate")
proto.RegisterType((*Error)(nil), "google.privacy.dlp.v2.Error")
@@ -11800,6 +12672,7 @@ func init() {
proto.RegisterType((*ListDlpJobsRequest)(nil), "google.privacy.dlp.v2.ListDlpJobsRequest")
proto.RegisterType((*ListDlpJobsResponse)(nil), "google.privacy.dlp.v2.ListDlpJobsResponse")
proto.RegisterType((*CancelDlpJobRequest)(nil), "google.privacy.dlp.v2.CancelDlpJobRequest")
+ proto.RegisterType((*FinishDlpJobRequest)(nil), "google.privacy.dlp.v2.FinishDlpJobRequest")
proto.RegisterType((*DeleteDlpJobRequest)(nil), "google.privacy.dlp.v2.DeleteDlpJobRequest")
proto.RegisterType((*CreateDeidentifyTemplateRequest)(nil), "google.privacy.dlp.v2.CreateDeidentifyTemplateRequest")
proto.RegisterType((*UpdateDeidentifyTemplateRequest)(nil), "google.privacy.dlp.v2.UpdateDeidentifyTemplateRequest")
@@ -11819,6 +12692,12 @@ func init() {
proto.RegisterType((*ListStoredInfoTypesRequest)(nil), "google.privacy.dlp.v2.ListStoredInfoTypesRequest")
proto.RegisterType((*ListStoredInfoTypesResponse)(nil), "google.privacy.dlp.v2.ListStoredInfoTypesResponse")
proto.RegisterType((*DeleteStoredInfoTypeRequest)(nil), "google.privacy.dlp.v2.DeleteStoredInfoTypeRequest")
+ proto.RegisterType((*HybridInspectJobTriggerRequest)(nil), "google.privacy.dlp.v2.HybridInspectJobTriggerRequest")
+ proto.RegisterType((*HybridInspectDlpJobRequest)(nil), "google.privacy.dlp.v2.HybridInspectDlpJobRequest")
+ proto.RegisterType((*HybridContentItem)(nil), "google.privacy.dlp.v2.HybridContentItem")
+ proto.RegisterType((*HybridFindingDetails)(nil), "google.privacy.dlp.v2.HybridFindingDetails")
+ proto.RegisterMapType((map[string]string)(nil), "google.privacy.dlp.v2.HybridFindingDetails.LabelsEntry")
+ proto.RegisterType((*HybridInspectResponse)(nil), "google.privacy.dlp.v2.HybridInspectResponse")
}
func init() {
@@ -11826,669 +12705,727 @@ func init() {
}
var fileDescriptor_6872a91dcb80f8dc = []byte{
- // 10586 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0xbd, 0x6b, 0x6c, 0x23, 0x59,
- 0x76, 0x18, 0xac, 0x22, 0x45, 0x89, 0x3a, 0x14, 0x25, 0xea, 0xea, 0xd9, 0xec, 0xee, 0xe9, 0xe9,
- 0xea, 0x99, 0xee, 0x1e, 0x4d, 0xb7, 0x34, 0xa3, 0x79, 0xf6, 0x63, 0x1e, 0x14, 0xc9, 0x16, 0xd5,
- 0xa3, 0x57, 0x17, 0xa9, 0x9e, 0x69, 0x79, 0xbe, 0xa9, 0xaf, 0x44, 0x96, 0xa4, 0x6a, 0x91, 0x2c,
- 0x4e, 0x55, 0xb1, 0x5b, 0x9a, 0xc9, 0x04, 0x9b, 0xd8, 0xf1, 0x23, 0xc9, 0xc4, 0x0b, 0xd8, 0xd9,
- 0x4d, 0xbc, 0xc6, 0x26, 0xf0, 0x06, 0x49, 0xb0, 0x80, 0x93, 0xd8, 0x79, 0x19, 0xd9, 0xc4, 0x41,
- 0x80, 0xc4, 0x5e, 0x18, 0x5e, 0xc7, 0x9b, 0x45, 0xfc, 0x68, 0x3b, 0x8e, 0xe1, 0xec, 0x7a, 0x8d,
- 0x59, 0xe4, 0x01, 0x64, 0xb3, 0xc8, 0x2e, 0x92, 0x20, 0xb8, 0x8f, 0x7a, 0x57, 0x91, 0x45, 0x49,
- 0xed, 0x35, 0x9c, 0x5f, 0xe4, 0x7d, 0x9c, 0x73, 0xef, 0x3d, 0xe7, 0xdc, 0x73, 0xce, 0xbd, 0xf7,
- 0xdc, 0x5b, 0x70, 0x6e, 0x57, 0x55, 0x77, 0xeb, 0xf2, 0x7c, 0x4b, 0x53, 0x1e, 0x48, 0xd5, 0xc3,
- 0xf9, 0x5a, 0xbd, 0x35, 0xff, 0x60, 0x01, 0xff, 0xcc, 0xb5, 0x34, 0xd5, 0x50, 0xd1, 0x24, 0xad,
- 0x30, 0xc7, 0x2a, 0xcc, 0xe1, 0x92, 0x07, 0x0b, 0xd9, 0x33, 0x0c, 0x4e, 0x6a, 0x29, 0xf3, 0x52,
- 0xb3, 0xa9, 0x1a, 0x92, 0xa1, 0xa8, 0x4d, 0x9d, 0x02, 0x65, 0xa7, 0x1d, 0xa5, 0xd5, 0xba, 0x22,
- 0x37, 0x0d, 0x56, 0x70, 0xce, 0x51, 0xb0, 0xa3, 0xc8, 0xf5, 0x9a, 0xb8, 0x2d, 0xef, 0x49, 0x0f,
- 0x14, 0x55, 0x63, 0x15, 0x4e, 0x39, 0x2a, 0x68, 0xb2, 0xae, 0xb6, 0xb5, 0xaa, 0xcc, 0x8a, 0x2e,
- 0x04, 0x77, 0x55, 0x37, 0x54, 0x4d, 0xda, 0x35, 0x2b, 0x3d, 0x61, 0x55, 0x52, 0x0d, 0x75, 0xbb,
- 0xbd, 0x33, 0x5f, 0x6b, 0x6b, 0xa4, 0x6b, 0xac, 0xfc, 0xb4, 0xb7, 0x5c, 0x6e, 0xb4, 0x8c, 0x43,
- 0x56, 0xf8, 0xa4, 0xb7, 0x90, 0x76, 0xb1, 0x21, 0xe9, 0xfb, 0x9e, 0xfe, 0x5b, 0x35, 0x0c, 0xa5,
- 0x21, 0xeb, 0x86, 0xd4, 0x68, 0x79, 0x46, 0xae, 0xb5, 0xaa, 0xf3, 0xba, 0x21, 0x19, 0x6d, 0x93,
- 0x24, 0x53, 0xac, 0xc0, 0x38, 0x6c, 0xc9, 0xf3, 0x35, 0xc9, 0x90, 0x3d, 0x1d, 0x62, 0xf9, 0x87,
- 0xea, 0xce, 0x43, 0x59, 0xde, 0x0f, 0x2a, 0xc4, 0x4d, 0xa9, 0x3b, 0x35, 0x89, 0xf5, 0x96, 0x17,
- 0x20, 0x53, 0x3c, 0xa8, 0xd6, 0xdb, 0x35, 0x79, 0xb9, 0xb9, 0xa3, 0x56, 0x0e, 0x5b, 0xb2, 0x8e,
- 0x5e, 0x07, 0x50, 0x9a, 0x3b, 0xaa, 0x88, 0x01, 0xf4, 0x19, 0xee, 0xc9, 0xf8, 0xe5, 0xd4, 0xc2,
- 0xb9, 0xb9, 0x40, 0x16, 0xce, 0x99, 0x50, 0xc2, 0x90, 0x62, 0xc2, 0xf3, 0x5f, 0x8b, 0x41, 0x9a,
- 0x20, 0xd5, 0x15, 0xb5, 0x29, 0xb4, 0xeb, 0x32, 0x12, 0x00, 0x6a, 0x4a, 0x15, 0x53, 0x50, 0xd2,
- 0x0e, 0x67, 0xb8, 0x27, 0xb9, 0xcb, 0xa9, 0x85, 0xe7, 0x42, 0x30, 0xe6, 0xdb, 0xba, 0xa1, 0x36,
- 0x4c, 0xbc, 0x73, 0x05, 0x0b, 0xae, 0xd4, 0x27, 0x38, 0xb0, 0xa0, 0x3c, 0x24, 0x34, 0x79, 0x57,
- 0x3e, 0x98, 0x89, 0x11, 0x74, 0xcf, 0x46, 0x43, 0x27, 0x60, 0x90, 0x52, 0x9f, 0x40, 0x61, 0xd1,
- 0xdb, 0x80, 0x64, 0x3a, 0x7c, 0xd1, 0x31, 0xe4, 0x38, 0xc1, 0x78, 0x29, 0x04, 0xa3, 0x97, 0x5e,
- 0xa5, 0x3e, 0x21, 0x23, 0x7b, 0x69, 0x58, 0x82, 0x74, 0x43, 0x32, 0xaa, 0x7b, 0x4a, 0x73, 0x97,
- 0x20, 0x9d, 0xe9, 0x7f, 0x92, 0xbb, 0x3c, 0xb2, 0x70, 0x21, 0x04, 0xe7, 0x2a, 0xab, 0x4b, 0x48,
- 0x39, 0xdc, 0x70, 0xa4, 0x16, 0x07, 0xa0, 0x1f, 0x23, 0xe0, 0xbf, 0xc2, 0xc1, 0xc8, 0x72, 0x53,
- 0x6f, 0xc9, 0x84, 0x02, 0x84, 0xac, 0x35, 0x18, 0xde, 0x53, 0x8d, 0x87, 0xaa, 0x56, 0x13, 0xb5,
- 0x76, 0x5d, 0x66, 0x84, 0x7d, 0x23, 0x22, 0x61, 0x65, 0xc3, 0x46, 0x35, 0x57, 0xa2, 0x78, 0xf0,
- 0xff, 0x52, 0x9f, 0x90, 0xda, 0xb3, 0x93, 0x68, 0x15, 0x46, 0x64, 0x93, 0x9b, 0xb4, 0x1d, 0x4a,
- 0xf1, 0xa7, 0x3a, 0xd1, 0xc7, 0x64, 0x7d, 0xa9, 0x4f, 0x48, 0xcb, 0xce, 0x0c, 0x6b, 0x3c, 0x9f,
- 0xe6, 0x60, 0xcc, 0x3d, 0x9e, 0xb2, 0x6c, 0x1c, 0x57, 0xf6, 0xd0, 0x0d, 0x48, 0xe0, 0x2e, 0xea,
- 0x33, 0x31, 0x02, 0xfa, 0x74, 0x28, 0xa8, 0xb3, 0x61, 0x81, 0xc2, 0xf0, 0x1f, 0x0f, 0x42, 0x9a,
- 0x95, 0xe4, 0xd5, 0xe6, 0x8e, 0xb2, 0x7b, 0xec, 0xee, 0x94, 0x60, 0xa4, 0xa1, 0x34, 0xc5, 0xba,
- 0xb2, 0x2f, 0xd7, 0x95, 0x3d, 0x55, 0xad, 0x11, 0xda, 0x8d, 0x2c, 0x9c, 0x0f, 0xc1, 0xb1, 0x62,
- 0x55, 0x14, 0xd2, 0x0d, 0xa5, 0x69, 0x27, 0xd1, 0x6d, 0x18, 0xa8, 0x2b, 0x0d, 0xc5, 0x30, 0xa5,
- 0x73, 0xa1, 0xf3, 0xc8, 0x68, 0xff, 0xe7, 0x6e, 0x29, 0xcd, 0x9a, 0xd2, 0xdc, 0x5d, 0x21, 0x90,
- 0x02, 0xc3, 0x80, 0x2e, 0x40, 0x5a, 0x69, 0x52, 0xa9, 0x7f, 0xbf, 0xad, 0x1a, 0x54, 0x38, 0x93,
- 0xc2, 0x30, 0xcb, 0xbc, 0x83, 0xf3, 0xd0, 0x95, 0xc0, 0xa9, 0x91, 0x20, 0x35, 0xfd, 0xf2, 0x7e,
- 0x07, 0xc6, 0xaa, 0x44, 0xbe, 0x9c, 0x95, 0x07, 0x3a, 0xf2, 0xc0, 0x2d, 0x8f, 0xc2, 0x68, 0xd5,
- 0x95, 0xd6, 0xd1, 0x2a, 0x8c, 0x56, 0xd5, 0xa6, 0x21, 0x37, 0x0d, 0x51, 0x6d, 0x11, 0xc3, 0x30,
- 0x93, 0x7c, 0x32, 0x7e, 0x79, 0x24, 0x54, 0xf0, 0xf2, 0xb4, 0xf6, 0x3a, 0xa9, 0x2c, 0x8c, 0x54,
- 0x9d, 0x49, 0x1d, 0xe5, 0x21, 0x89, 0xb9, 0x2c, 0xea, 0xb2, 0x31, 0x03, 0xa4, 0x63, 0x97, 0x23,
- 0x09, 0x47, 0x59, 0x36, 0x84, 0x41, 0x8d, 0xfe, 0xc9, 0x7e, 0x2b, 0x06, 0x69, 0x17, 0x4d, 0xd1,
- 0xf3, 0x30, 0xd9, 0x90, 0x0e, 0xc4, 0x1d, 0x9a, 0xa9, 0x8b, 0x2d, 0x59, 0x13, 0x15, 0x43, 0x6e,
- 0x90, 0xc9, 0x98, 0x10, 0x50, 0x43, 0x3a, 0x60, 0x00, 0xfa, 0x86, 0xac, 0x2d, 0x1b, 0x72, 0x03,
- 0xbd, 0x02, 0x33, 0x3e, 0x10, 0x4d, 0x7e, 0xbf, 0x2d, 0xeb, 0x06, 0x11, 0x8f, 0x84, 0x30, 0xe9,
- 0x86, 0x12, 0x68, 0x21, 0xfa, 0x33, 0x90, 0xf5, 0xb7, 0x65, 0x92, 0x7b, 0x26, 0x4e, 0x06, 0xf5,
- 0x66, 0xef, 0x72, 0x61, 0x49, 0x2e, 0x49, 0x0a, 0x53, 0x9e, 0x2e, 0xb3, 0xc2, 0x6c, 0x0b, 0x4f,
- 0x0e, 0x47, 0x45, 0x74, 0x13, 0x86, 0xec, 0xd6, 0xa9, 0xee, 0xe9, 0x3a, 0x37, 0x92, 0xe6, 0xdc,
- 0x40, 0xe7, 0x61, 0xd8, 0x39, 0x18, 0x36, 0xf2, 0x94, 0xa3, 0x71, 0xfe, 0x3b, 0x1c, 0x8c, 0x2e,
- 0x1e, 0x1a, 0x32, 0x63, 0x2c, 0x21, 0x5e, 0x81, 0xaa, 0x0f, 0xd2, 0xde, 0x48, 0xa8, 0x11, 0xf1,
- 0x40, 0x91, 0xb4, 0x4e, 0x3a, 0x40, 0xa0, 0x11, 0x82, 0xfe, 0x9a, 0x64, 0x48, 0xa4, 0xd1, 0x61,
- 0x81, 0xfc, 0xe7, 0x7f, 0x94, 0x83, 0x21, 0xab, 0x1e, 0xca, 0xc2, 0xd4, 0xe2, 0xbd, 0x4a, 0xb1,
- 0x2c, 0x56, 0xee, 0x6d, 0x14, 0xc5, 0xcd, 0xb5, 0xf2, 0x46, 0x31, 0xbf, 0x7c, 0x6b, 0xb9, 0x58,
- 0xc8, 0xf4, 0xa1, 0x21, 0x48, 0x2c, 0xaf, 0xe6, 0x96, 0x8a, 0x99, 0x01, 0x34, 0x02, 0x40, 0xfe,
- 0x8a, 0xb7, 0x37, 0x8a, 0x4b, 0x19, 0x0e, 0xa5, 0x61, 0x88, 0xa6, 0x17, 0x57, 0x37, 0x32, 0x31,
- 0x3b, 0xb9, 0xb1, 0xb6, 0x94, 0x89, 0xdb, 0xc9, 0xf2, 0xdd, 0xa5, 0x4c, 0x3f, 0x4e, 0x56, 0x8a,
- 0xef, 0x54, 0xc4, 0xcd, 0xca, 0xad, 0x57, 0x33, 0x09, 0x94, 0x84, 0xfe, 0xdc, 0x5d, 0x61, 0x3d,
- 0x93, 0xe2, 0xff, 0x3e, 0x07, 0x29, 0xe7, 0xa0, 0xa7, 0x20, 0xf1, 0x40, 0xaa, 0xb7, 0x65, 0x32,
- 0xf7, 0x87, 0xb0, 0xf9, 0x22, 0x49, 0xf4, 0x22, 0x24, 0x0c, 0x69, 0xbb, 0x4e, 0x27, 0x70, 0x6a,
- 0xe1, 0x4c, 0x08, 0x35, 0x2a, 0xb8, 0x0e, 0x86, 0x22, 0x95, 0x51, 0x11, 0x86, 0xb6, 0x0f, 0x0d,
- 0x99, 0x8a, 0x69, 0x82, 0x40, 0x5e, 0x8c, 0x46, 0xc7, 0x52, 0x9f, 0x90, 0xc4, 0xa0, 0xf8, 0xff,
- 0x62, 0x0a, 0x86, 0x30, 0xdd, 0x08, 0x1a, 0xfe, 0x1f, 0x71, 0x90, 0x20, 0xcd, 0xa0, 0x57, 0x61,
- 0x70, 0x4f, 0x96, 0x6a, 0xb2, 0x66, 0xea, 0xcb, 0x27, 0x42, 0x70, 0xdf, 0xc2, 0x7e, 0xd1, 0x72,
- 0x4d, 0x30, 0xab, 0xa3, 0x17, 0xa1, 0x5f, 0x53, 0x1f, 0x9a, 0xaa, 0xfb, 0xc9, 0x4e, 0x83, 0x99,
- 0x13, 0xd4, 0x87, 0x02, 0xa9, 0x9d, 0xbd, 0x01, 0x71, 0x41, 0x7d, 0x88, 0x5e, 0x84, 0x01, 0x42,
- 0x13, 0xb3, 0xd5, 0x30, 0x5a, 0xdc, 0xc5, 0x95, 0x04, 0x56, 0x97, 0xff, 0xc0, 0x52, 0xf8, 0x82,
- 0xac, 0xb7, 0xeb, 0x06, 0xba, 0x0e, 0x49, 0x4b, 0x22, 0xbb, 0x75, 0x9f, 0x54, 0x13, 0xac, 0xfa,
- 0xe8, 0x2a, 0x20, 0x6b, 0x6a, 0x1a, 0x5a, 0xbb, 0x59, 0x95, 0x0c, 0x99, 0x2a, 0xfc, 0xa4, 0x30,
- 0x66, 0x96, 0x54, 0xcc, 0x02, 0xfe, 0x77, 0x62, 0x30, 0xc8, 0x90, 0xa0, 0x09, 0x48, 0x50, 0x4d,
- 0x8c, 0xc5, 0x7a, 0x48, 0xa0, 0x09, 0xf7, 0x04, 0x8b, 0xf5, 0x3a, 0xc1, 0x72, 0x00, 0x0e, 0xbb,
- 0x13, 0x8f, 0x6a, 0x77, 0x1c, 0x40, 0xe8, 0x06, 0x24, 0xeb, 0x6a, 0x95, 0xb8, 0xbe, 0x4c, 0xc4,
- 0xc2, 0xda, 0x5f, 0x61, 0xd5, 0x04, 0x0b, 0x00, 0xdd, 0x80, 0x54, 0x55, 0x93, 0x25, 0x43, 0x16,
- 0xb1, 0xd3, 0x39, 0x33, 0x40, 0xe0, 0xb3, 0x36, 0x3c, 0x75, 0x7e, 0xe7, 0x2a, 0xa6, 0xf3, 0x2b,
- 0x00, 0xad, 0x8e, 0x33, 0xd0, 0x1b, 0x00, 0x84, 0x06, 0x44, 0xbf, 0xcd, 0x0c, 0x12, 0xd8, 0x30,
- 0x89, 0x20, 0xf6, 0x0a, 0x13, 0x40, 0x18, 0x7a, 0xdf, 0xfc, 0xcb, 0xff, 0x27, 0x0e, 0x92, 0x2b,
- 0x76, 0x57, 0x80, 0x48, 0xbc, 0x26, 0x35, 0x77, 0x4d, 0x55, 0x15, 0x26, 0x20, 0x02, 0xae, 0x23,
- 0x90, 0x19, 0x42, 0xfe, 0xa2, 0x22, 0xb6, 0x43, 0x35, 0xb9, 0xa5, 0x2a, 0x4d, 0x83, 0x61, 0x88,
- 0x45, 0xc0, 0x30, 0x62, 0x01, 0x51, 0x34, 0x65, 0x18, 0x33, 0xcd, 0x99, 0x49, 0x22, 0x7d, 0x66,
- 0x90, 0x88, 0xd8, 0xc5, 0xce, 0x06, 0xcd, 0xa2, 0x6d, 0xa6, 0xea, 0xce, 0xd0, 0xf9, 0x7f, 0x1a,
- 0x87, 0x51, 0x4f, 0x2d, 0xf4, 0x34, 0x10, 0xd3, 0x27, 0x29, 0x4d, 0x59, 0x13, 0x9b, 0x52, 0xc3,
- 0x14, 0xaa, 0xb4, 0x95, 0xbb, 0x26, 0x35, 0x64, 0xb4, 0x01, 0xa3, 0x9a, 0x5c, 0xc5, 0xbe, 0xa3,
- 0xc5, 0x62, 0x3a, 0xac, 0x30, 0x7b, 0x2d, 0x90, 0xda, 0x66, 0x33, 0xa5, 0x3e, 0x61, 0x44, 0x73,
- 0xe5, 0x60, 0x47, 0x51, 0x69, 0x48, 0xbb, 0xb2, 0x8d, 0x30, 0xde, 0xd1, 0x51, 0x5c, 0xc6, 0x95,
- 0x1d, 0xf8, 0xd2, 0x8a, 0x33, 0x03, 0xdd, 0x85, 0xb1, 0x9a, 0x5a, 0x6d, 0x37, 0x9c, 0x14, 0x63,
- 0xea, 0x2a, 0xcc, 0x35, 0x2f, 0xb0, 0xfa, 0x0e, 0xa4, 0x99, 0x9a, 0x27, 0x0f, 0xbd, 0x05, 0xe3,
- 0x36, 0x7d, 0xac, 0xa5, 0x57, 0x04, 0xf9, 0x44, 0x16, 0x98, 0x95, 0x87, 0x9e, 0xa5, 0x5c, 0xa5,
- 0xc8, 0x1e, 0xc8, 0x1a, 0x76, 0x73, 0x89, 0xb8, 0x0e, 0x51, 0x6e, 0x91, 0x82, 0xbb, 0x34, 0x7f,
- 0x11, 0xec, 0xe9, 0xc4, 0xbf, 0x00, 0x19, 0x6f, 0x6f, 0xd1, 0x39, 0x48, 0xed, 0x28, 0x75, 0x59,
- 0x54, 0x77, 0x76, 0xb0, 0x97, 0x82, 0xd9, 0x16, 0x17, 0x00, 0x67, 0xad, 0x93, 0x1c, 0xfe, 0xb7,
- 0x39, 0x18, 0x71, 0xb3, 0x01, 0x4f, 0x14, 0xc6, 0xc6, 0x7d, 0xd9, 0x5c, 0x5a, 0x3d, 0xd9, 0x91,
- 0x83, 0x6f, 0xc9, 0x87, 0xc2, 0x90, 0x66, 0xfe, 0x45, 0xd7, 0xb0, 0xc6, 0xc3, 0x2b, 0x54, 0xa5,
- 0xc6, 0x04, 0xa0, 0xab, 0xc2, 0xde, 0xa1, 0x7f, 0xd0, 0x5b, 0x30, 0x42, 0x2c, 0x4a, 0x54, 0x86,
- 0x13, 0xd5, 0x6d, 0x49, 0x73, 0xda, 0x70, 0x26, 0xf9, 0x2b, 0x90, 0x76, 0x95, 0xa3, 0xd3, 0x30,
- 0xa4, 0xa9, 0x0f, 0x45, 0xa5, 0x59, 0x93, 0x0f, 0x18, 0x2d, 0x92, 0x9a, 0xfa, 0x70, 0x19, 0xa7,
- 0xf9, 0x79, 0x48, 0xd0, 0x69, 0x35, 0x01, 0x09, 0xdd, 0x90, 0x34, 0x93, 0x5a, 0x34, 0x81, 0x32,
- 0x10, 0x97, 0x9b, 0x74, 0x3c, 0x71, 0x01, 0xff, 0xe5, 0xb7, 0x20, 0xed, 0x92, 0x37, 0xb4, 0x0c,
- 0x23, 0xdb, 0x6a, 0x9b, 0xa8, 0x5f, 0x71, 0x5b, 0x3d, 0xb0, 0x0c, 0x07, 0x1f, 0x66, 0x0a, 0x59,
- 0xe5, 0x45, 0xf5, 0x40, 0x48, 0x6f, 0xdb, 0x09, 0x59, 0xe7, 0x25, 0x48, 0x39, 0x4a, 0x71, 0xe3,
- 0x86, 0xda, 0x62, 0x0e, 0x20, 0xfe, 0x8b, 0xdd, 0x8d, 0xba, 0xbc, 0x63, 0x7a, 0x77, 0xe4, 0x3f,
- 0xee, 0xf8, 0x43, 0xa5, 0x66, 0xec, 0x11, 0x9a, 0x25, 0x04, 0x9a, 0x40, 0x53, 0x30, 0xb0, 0x27,
- 0x2b, 0xbb, 0x7b, 0x06, 0xd1, 0xb7, 0x09, 0x81, 0xa5, 0xf8, 0x1f, 0x4d, 0x00, 0x12, 0xe4, 0x9a,
- 0x54, 0x35, 0xc8, 0x28, 0x4c, 0x8f, 0xb0, 0x04, 0x03, 0x2d, 0x49, 0x93, 0x9b, 0x74, 0xf8, 0x43,
- 0x8b, 0xcf, 0x7d, 0x2f, 0x77, 0x15, 0x9e, 0xad, 0xd6, 0xd5, 0x76, 0xcd, 0xdc, 0xf8, 0x68, 0x48,
- 0x4d, 0x69, 0x57, 0xd6, 0xd8, 0xa8, 0xa4, 0x96, 0xa2, 0xcf, 0x55, 0xd5, 0xc6, 0xfc, 0x86, 0xa6,
- 0xde, 0xc7, 0x66, 0x8f, 0xc1, 0x63, 0xd9, 0x33, 0xb9, 0x88, 0x25, 0x21, 0x49, 0x44, 0x18, 0xcc,
- 0x2c, 0xca, 0x6c, 0x85, 0x9a, 0x4a, 0xb1, 0x4a, 0x9c, 0xc8, 0x2e, 0xcb, 0x40, 0x97, 0xc3, 0x29,
- 0xa4, 0x15, 0xd7, 0xba, 0xea, 0x01, 0x4c, 0x53, 0x55, 0xa1, 0x91, 0x31, 0xe1, 0x46, 0x29, 0x52,
- 0xbc, 0xc2, 0xc0, 0x5c, 0x78, 0x3d, 0x54, 0x84, 0xbd, 0x34, 0x98, 0x63, 0x09, 0x86, 0x87, 0xb5,
- 0x37, 0xa9, 0x04, 0xe4, 0xea, 0xe8, 0x19, 0xc8, 0x98, 0x2b, 0x1f, 0xcb, 0xcc, 0x0f, 0x10, 0x03,
- 0x3d, 0xca, 0xf2, 0x4d, 0xe7, 0x13, 0xe5, 0x9d, 0x5e, 0xd2, 0x60, 0x2f, 0x5e, 0x92, 0xed, 0x23,
- 0x65, 0xbf, 0xca, 0xc1, 0x44, 0x50, 0xff, 0xd0, 0xeb, 0xbd, 0xfb, 0xce, 0xd8, 0xf9, 0xb2, 0x8c,
- 0xfb, 0x65, 0xac, 0xbd, 0x31, 0x4a, 0x51, 0xaa, 0xd7, 0x45, 0x43, 0x3e, 0xa0, 0xc2, 0x95, 0xc4,
- 0x6a, 0x94, 0x16, 0xe4, 0xea, 0xf5, 0x8a, 0x7c, 0x60, 0x60, 0xf3, 0xe5, 0x24, 0x72, 0x5d, 0xd5,
- 0xd8, 0x2c, 0x3d, 0x13, 0x6a, 0x75, 0xea, 0xaa, 0x86, 0x95, 0xbb, 0xd5, 0xe3, 0xba, 0xaa, 0x2d,
- 0x26, 0x61, 0xc0, 0x90, 0xb4, 0x5d, 0xd9, 0xe0, 0xf3, 0x90, 0x20, 0x59, 0x58, 0xce, 0x35, 0xb9,
- 0x46, 0x7a, 0x1f, 0x13, 0xf0, 0x5f, 0x2c, 0xd3, 0xbb, 0x9a, 0x2c, 0x53, 0x4b, 0x12, 0x13, 0x68,
- 0x02, 0x4b, 0xff, 0xb6, 0xe9, 0xbc, 0xc6, 0x04, 0xf2, 0x9f, 0xff, 0x07, 0x1c, 0x8c, 0xbb, 0x78,
- 0xa9, 0xb7, 0xd4, 0xa6, 0x2e, 0x63, 0xe3, 0x45, 0x1b, 0x96, 0x6b, 0x22, 0x61, 0x21, 0x41, 0x3f,
- 0x6c, 0x0e, 0x4a, 0xae, 0x91, 0xea, 0xb8, 0x9a, 0x7c, 0x60, 0x68, 0xb4, 0x9e, 0x35, 0xfa, 0x21,
- 0x21, 0x6d, 0xe5, 0x92, 0xb1, 0x3b, 0x64, 0x56, 0x23, 0xfe, 0x5d, 0x37, 0x8b, 0xe4, 0xf4, 0x05,
- 0x2d, 0x99, 0xa5, 0x49, 0xfe, 0xd7, 0xe2, 0x30, 0x53, 0x90, 0x95, 0x9a, 0xdc, 0x34, 0x94, 0x9d,
- 0x43, 0xc6, 0xef, 0x93, 0x9f, 0x88, 0x15, 0x18, 0xab, 0x59, 0xad, 0xb8, 0xa7, 0x5a, 0xa8, 0xd9,
- 0x73, 0xf6, 0x0a, 0x4b, 0x7f, 0xa6, 0xe6, 0xc9, 0x09, 0x98, 0xbd, 0xf1, 0xa3, 0xcf, 0xde, 0x97,
- 0xa1, 0x9f, 0xcc, 0x0a, 0xea, 0x12, 0xf2, 0x9d, 0xbd, 0x17, 0x32, 0x23, 0x48, 0x7d, 0xb4, 0x00,
- 0x93, 0x66, 0x27, 0x0c, 0xb9, 0xd1, 0xaa, 0x63, 0xdf, 0x90, 0x38, 0x28, 0x09, 0xc2, 0xbc, 0x71,
- 0x56, 0x58, 0x61, 0x65, 0xc4, 0x4d, 0x79, 0x15, 0x66, 0x1c, 0xe4, 0x70, 0x83, 0x0d, 0x10, 0xb0,
- 0x29, 0xbb, 0xdc, 0x05, 0xe9, 0xd1, 0x68, 0x83, 0x5e, 0x8d, 0xc6, 0x7f, 0x9e, 0x83, 0x53, 0x01,
- 0x0c, 0x65, 0x92, 0x68, 0x0e, 0x92, 0xeb, 0x71, 0x90, 0xcb, 0x90, 0x54, 0x1f, 0xc8, 0xda, 0x03,
- 0x45, 0x7e, 0xc8, 0xd8, 0x76, 0x35, 0xcc, 0x1c, 0x6a, 0x52, 0x53, 0xdf, 0x51, 0xb5, 0x06, 0xe9,
- 0xd0, 0x3a, 0x03, 0x12, 0x2c, 0x70, 0xfe, 0xab, 0x71, 0x98, 0x11, 0xc2, 0x24, 0xee, 0x2d, 0x8f,
- 0xc4, 0xbd, 0xf0, 0xfb, 0xb9, 0xd8, 0x71, 0x84, 0x4e, 0x3b, 0xb6, 0xd0, 0x69, 0x7f, 0x9a, 0x84,
- 0x4e, 0xeb, 0x22, 0x74, 0xda, 0x31, 0x84, 0x4e, 0xf8, 0x93, 0x2c, 0x74, 0x5f, 0x8a, 0xc1, 0xa4,
- 0xcd, 0x88, 0xc7, 0xa3, 0xe3, 0x4e, 0xd4, 0x97, 0x30, 0x69, 0x16, 0x3f, 0x29, 0xc1, 0xe8, 0x0f,
- 0x17, 0x0c, 0x0f, 0x7b, 0x13, 0x3e, 0xf6, 0xde, 0x85, 0x29, 0x2f, 0xf1, 0x18, 0x6b, 0x6f, 0xc2,
- 0x00, 0xb3, 0x41, 0x5c, 0x0f, 0x36, 0x88, 0xc1, 0xf0, 0xbf, 0x1a, 0x83, 0xf1, 0xf5, 0xb6, 0xd1,
- 0x6a, 0x1b, 0x65, 0x7a, 0x54, 0xc5, 0x06, 0x7f, 0xd3, 0xdc, 0x01, 0xea, 0x8c, 0x74, 0x51, 0xd9,
- 0xbd, 0xd3, 0x96, 0xb5, 0x43, 0xcf, 0x4e, 0xd0, 0xbb, 0x90, 0x56, 0x09, 0x52, 0x51, 0xaf, 0xee,
- 0xc9, 0x0d, 0x89, 0xed, 0x12, 0xbc, 0x12, 0x82, 0x25, 0xa0, 0x03, 0x66, 0x1e, 0x01, 0x17, 0x86,
- 0x55, 0x47, 0x8a, 0xff, 0x34, 0x07, 0xc3, 0xce, 0x62, 0x74, 0x16, 0x4e, 0xad, 0x6f, 0x56, 0x36,
- 0x36, 0x2b, 0x62, 0x39, 0x5f, 0x2a, 0xae, 0xe6, 0x3c, 0xdb, 0x6a, 0x63, 0x90, 0x5e, 0xcc, 0x95,
- 0x97, 0xf3, 0x62, 0x7e, 0x7d, 0x65, 0x73, 0x75, 0xad, 0x9c, 0xe1, 0xd0, 0x28, 0xa4, 0x96, 0xf2,
- 0x65, 0x2b, 0x23, 0x86, 0x26, 0x61, 0xac, 0x90, 0xab, 0xe4, 0xca, 0x95, 0x75, 0xa1, 0x68, 0x65,
- 0xc7, 0x71, 0xf6, 0xe2, 0xf2, 0x92, 0x78, 0x67, 0xb3, 0x28, 0xdc, 0xb3, 0xb2, 0xfb, 0x31, 0x78,
- 0x6e, 0x65, 0xc5, 0xca, 0x48, 0x58, 0x87, 0x0f, 0x55, 0x7b, 0x2f, 0xb3, 0x6c, 0x48, 0x86, 0x7e,
- 0xcc, 0xbd, 0xcc, 0x09, 0x48, 0x54, 0xd5, 0x76, 0xd3, 0x60, 0x0b, 0x0e, 0x9a, 0xe0, 0x7f, 0xbd,
- 0x1f, 0x66, 0x18, 0x37, 0x0b, 0x92, 0x21, 0x95, 0xc9, 0x0c, 0x29, 0xc8, 0x86, 0xa4, 0xd4, 0x75,
- 0xd4, 0xc0, 0x1a, 0x97, 0xcc, 0x2b, 0xb9, 0x66, 0xed, 0x6f, 0xd3, 0x59, 0xd0, 0x65, 0x0b, 0xd7,
- 0x87, 0x6b, 0x4e, 0x30, 0x11, 0xb1, 0xbd, 0x6e, 0xac, 0x8a, 0xdd, 0x39, 0x68, 0xcd, 0x92, 0x3e,
- 0x3a, 0x4d, 0x5e, 0xee, 0xbd, 0x0d, 0xa7, 0x3c, 0x66, 0x7f, 0x91, 0x83, 0x8c, 0xb7, 0x59, 0xb4,
- 0x0d, 0xa7, 0xf4, 0xa6, 0xd4, 0xd2, 0xf7, 0x54, 0x43, 0xf4, 0x4e, 0x2d, 0x46, 0xd4, 0x8b, 0x9d,
- 0xdb, 0x35, 0x27, 0x9b, 0x30, 0x6d, 0x22, 0xf2, 0x14, 0xa0, 0x5b, 0x00, 0xf7, 0xd5, 0x6d, 0xb7,
- 0x3d, 0xb9, 0xd4, 0x19, 0xe9, 0x6d, 0x75, 0x9b, 0x69, 0x8e, 0xa1, 0xfb, 0xe6, 0xdf, 0xec, 0x3f,
- 0xe4, 0x60, 0x80, 0xed, 0xf9, 0x5d, 0x82, 0xd1, 0x96, 0xa6, 0x56, 0x65, 0x5d, 0x97, 0x6b, 0x22,
- 0x76, 0xdd, 0x75, 0xb6, 0x98, 0x1c, 0xb1, 0xb2, 0xc9, 0xbe, 0x30, 0xd6, 0x18, 0x86, 0x6a, 0x48,
- 0x75, 0x51, 0xd6, 0x0d, 0xa5, 0x21, 0x19, 0x56, 0x75, 0xca, 0xf6, 0x71, 0x52, 0x58, 0x34, 0xcb,
- 0x28, 0xcc, 0x0a, 0x8c, 0x5a, 0x82, 0x25, 0xea, 0x58, 0xd6, 0xd8, 0x46, 0xfd, 0x53, 0x5d, 0xc4,
- 0x8b, 0xc8, 0x25, 0xd6, 0x75, 0x8e, 0x24, 0xff, 0x2f, 0x38, 0x18, 0x37, 0x2b, 0x14, 0x64, 0xbd,
- 0xaa, 0x29, 0x84, 0xf4, 0xd8, 0xc5, 0x76, 0xec, 0xf4, 0x90, 0xff, 0xe8, 0x3c, 0x0c, 0xd7, 0x14,
- 0xbd, 0x55, 0x97, 0x0e, 0xa9, 0x5a, 0xa3, 0x1e, 0x72, 0x8a, 0xe5, 0x11, 0x75, 0xb6, 0x0a, 0xc3,
- 0x7a, 0xbb, 0xd5, 0x52, 0x35, 0x3a, 0x14, 0xd2, 0xb3, 0x91, 0x85, 0xd9, 0x6e, 0x3d, 0x33, 0x41,
- 0x16, 0x0f, 0x85, 0x94, 0x6e, 0x27, 0xd0, 0x93, 0x90, 0xaa, 0xd9, 0x9d, 0x62, 0x7a, 0xd4, 0x99,
- 0xc5, 0x1b, 0x30, 0xb1, 0xa2, 0xe8, 0x86, 0x75, 0xc8, 0x63, 0x9a, 0x96, 0x0b, 0x90, 0xae, 0x4b,
- 0xcd, 0xdd, 0x36, 0x5e, 0x12, 0x56, 0xd5, 0x9a, 0x39, 0x90, 0x61, 0x33, 0x33, 0xaf, 0xd6, 0x64,
- 0xbc, 0x36, 0xde, 0x51, 0xea, 0x86, 0xac, 0xb1, 0xa1, 0xb0, 0x94, 0x57, 0x29, 0xc7, 0x7d, 0x4a,
- 0x79, 0x1b, 0x26, 0x3d, 0xad, 0x32, 0x9d, 0xbc, 0x1c, 0x70, 0xbc, 0xd7, 0x6d, 0xf4, 0x0e, 0xb2,
- 0x3b, 0x0f, 0xbd, 0xff, 0x90, 0x83, 0x49, 0x41, 0xd1, 0xf7, 0x73, 0x4d, 0xa9, 0x7e, 0xa8, 0x2b,
- 0xba, 0x25, 0x74, 0xd8, 0xd8, 0x31, 0x54, 0x62, 0x43, 0x36, 0x34, 0xa5, 0xda, 0x45, 0x57, 0x6f,
- 0xd0, 0xe4, 0x2a, 0xa9, 0x2b, 0xa4, 0x5b, 0xce, 0x24, 0x5a, 0x82, 0x61, 0x6a, 0x69, 0x45, 0xaa,
- 0xf6, 0x63, 0xd1, 0xd5, 0xbe, 0x90, 0xa2, 0x90, 0x74, 0x9b, 0xfe, 0x15, 0x18, 0xa4, 0xcb, 0x3b,
- 0x53, 0x1e, 0xcf, 0x86, 0xe0, 0xc8, 0xd1, 0x93, 0x30, 0xb3, 0x36, 0xff, 0x07, 0x1c, 0x0c, 0xde,
- 0x69, 0x4b, 0xba, 0xb2, 0x5c, 0x43, 0xd7, 0x20, 0x41, 0xf6, 0x82, 0xd8, 0x88, 0xba, 0x6c, 0x1c,
- 0x2d, 0xc6, 0x7f, 0x3f, 0x17, 0x13, 0x28, 0x84, 0x7b, 0x01, 0x1c, 0xeb, 0x7d, 0x01, 0x7c, 0x0e,
- 0x80, 0x1d, 0x38, 0x1a, 0xd2, 0xae, 0x75, 0x2e, 0x32, 0x44, 0xf3, 0x2a, 0xd2, 0x2e, 0x7a, 0x11,
- 0x70, 0x65, 0x59, 0xc3, 0x4b, 0x54, 0xea, 0x33, 0x4e, 0xf9, 0xf6, 0xf6, 0x8a, 0x8d, 0x96, 0x71,
- 0xc8, 0xd0, 0x92, 0x9a, 0x8b, 0x09, 0x88, 0x1b, 0xd2, 0x2e, 0xff, 0xed, 0x18, 0x64, 0xf0, 0x8c,
- 0x53, 0x74, 0x43, 0xa9, 0x4a, 0x75, 0x4a, 0xb2, 0x37, 0x4c, 0x5b, 0x1b, 0x8f, 0x4e, 0x74, 0x36,
- 0x66, 0x6a, 0x6e, 0xdf, 0x83, 0xa1, 0xf7, 0x31, 0xe5, 0x44, 0xa5, 0x66, 0x4a, 0xdb, 0xcd, 0x10,
- 0x24, 0xde, 0xc6, 0xe7, 0x18, 0xc9, 0x89, 0xdb, 0xa8, 0xc8, 0x1a, 0x21, 0x29, 0x45, 0x9e, 0x7c,
- 0x9f, 0x16, 0xe9, 0x48, 0x00, 0xa4, 0xc9, 0x75, 0xc9, 0x50, 0x1e, 0xc8, 0xe2, 0x0e, 0x31, 0x01,
- 0xcd, 0xea, 0x61, 0xb4, 0x4d, 0x3d, 0x8a, 0x6a, 0xcc, 0x04, 0xbf, 0x65, 0x42, 0x67, 0xf7, 0x61,
- 0x22, 0xa8, 0x69, 0xf4, 0x62, 0x4f, 0xac, 0x37, 0xb9, 0x7e, 0xd6, 0xc5, 0x35, 0x3a, 0x8d, 0x6d,
- 0x9e, 0xf1, 0x3f, 0x8c, 0x20, 0xed, 0x12, 0x7f, 0xf4, 0x3e, 0x4c, 0x35, 0xdb, 0x0d, 0x59, 0xc3,
- 0x84, 0xa0, 0xea, 0xd3, 0x54, 0xfd, 0xb4, 0xdd, 0x6b, 0x51, 0x26, 0xd1, 0xdc, 0x9a, 0x89, 0x82,
- 0x68, 0x51, 0x3a, 0x2f, 0x4b, 0x7d, 0xc2, 0x44, 0x33, 0x20, 0x1f, 0x3d, 0x84, 0x99, 0xaa, 0x64,
- 0xc8, 0xbb, 0x6a, 0x40, 0xa3, 0x94, 0x96, 0x37, 0x22, 0x35, 0x9a, 0xb7, 0x91, 0xb8, 0x9b, 0x9d,
- 0xaa, 0x06, 0x96, 0x20, 0x19, 0xd0, 0xbe, 0x28, 0x35, 0xd5, 0xe6, 0x61, 0x43, 0x31, 0x0e, 0xdd,
- 0x26, 0xee, 0xa5, 0x48, 0x4d, 0xbe, 0x95, 0x33, 0xa1, 0xad, 0xc6, 0x32, 0xfb, 0x9e, 0x3c, 0xdc,
- 0x4c, 0x5d, 0xac, 0x29, 0x64, 0xb3, 0xda, 0x6e, 0xa6, 0xbf, 0x87, 0x66, 0x56, 0x0a, 0x26, 0xb4,
- 0xdd, 0x4c, 0xdd, 0x93, 0x87, 0x34, 0x98, 0xde, 0x17, 0x1b, 0x52, 0xcb, 0x34, 0x96, 0xf6, 0x1e,
- 0x1f, 0xdb, 0xc4, 0x8f, 0xc6, 0xba, 0xb7, 0x56, 0xa5, 0x56, 0xd1, 0xc2, 0x60, 0xb3, 0x6e, 0x3f,
- 0x20, 0x1f, 0x7d, 0xcc, 0xc1, 0x93, 0x35, 0xb9, 0x6e, 0x48, 0x62, 0x4b, 0x93, 0x75, 0xb9, 0x59,
- 0x95, 0x03, 0x5a, 0xa7, 0x1b, 0xfd, 0x8b, 0x91, 0x5a, 0x2f, 0x60, 0x64, 0x1b, 0x0c, 0x57, 0x40,
- 0x37, 0xce, 0xd6, 0x3a, 0x55, 0xc8, 0xae, 0xc0, 0x44, 0x90, 0xe8, 0x1d, 0x6d, 0xf2, 0x64, 0xd7,
- 0x60, 0x2a, 0x58, 0xa6, 0x8e, 0x88, 0xef, 0x63, 0x0e, 0x32, 0x5e, 0x89, 0x41, 0x37, 0xfc, 0x3a,
- 0xaa, 0x1b, 0x3a, 0x5b, 0x01, 0xdd, 0x84, 0x21, 0xac, 0x25, 0x8c, 0x43, 0xfb, 0x30, 0x21, 0x4c,
- 0xa9, 0x17, 0x49, 0x3d, 0x0c, 0x2d, 0xb3, 0x7f, 0xd9, 0xbf, 0xc9, 0x41, 0xc6, 0x2b, 0x5a, 0xc7,
- 0xeb, 0xcf, 0x3a, 0x8c, 0xeb, 0x72, 0x53, 0x57, 0x88, 0x46, 0x94, 0x0c, 0x43, 0x53, 0xb6, 0xdb,
- 0x86, 0x1c, 0xf1, 0x98, 0x03, 0x59, 0xa0, 0x39, 0x13, 0x32, 0xfb, 0x43, 0x83, 0x30, 0x11, 0x24,
- 0x91, 0x68, 0xd7, 0xdf, 0xcd, 0xe2, 0x91, 0xe5, 0x7b, 0xae, 0x22, 0xed, 0xee, 0xca, 0xb5, 0x40,
- 0x1d, 0x7f, 0x0e, 0x52, 0x9a, 0xbc, 0x4b, 0xc5, 0xb9, 0x66, 0x3a, 0x75, 0x40, 0xb3, 0x88, 0x97,
- 0xa4, 0x43, 0x46, 0x6a, 0x1f, 0x28, 0x75, 0x45, 0xd2, 0x0e, 0xa9, 0x93, 0x60, 0x5a, 0xf8, 0xd2,
- 0xd1, 0x3b, 0x94, 0x33, 0x31, 0x52, 0x4f, 0x62, 0x54, 0x72, 0xa5, 0xf5, 0xec, 0x1f, 0x72, 0x90,
- 0x72, 0x74, 0xfa, 0x4f, 0xad, 0x63, 0x90, 0xfd, 0xc1, 0x38, 0x8c, 0xb8, 0x89, 0x71, 0x7c, 0xb7,
- 0xe0, 0xa1, 0x5f, 0x76, 0x36, 0x4f, 0x8a, 0x55, 0xa6, 0xdf, 0xf0, 0xc7, 0xe6, 0x2f, 0x54, 0x61,
- 0xd8, 0xd9, 0xe4, 0x63, 0xf1, 0x13, 0xb2, 0xbf, 0xc1, 0xc1, 0xd9, 0x8e, 0xaa, 0x19, 0xbd, 0x19,
- 0x5d, 0x6d, 0xb0, 0xee, 0xf6, 0x3c, 0xd1, 0x84, 0xd0, 0x89, 0x76, 0x29, 0xa2, 0x53, 0xe7, 0x9b,
- 0x47, 0xd6, 0xfe, 0xc4, 0x4f, 0x5c, 0x84, 0x33, 0x64, 0x25, 0xf1, 0x81, 0x6c, 0x2f, 0xc5, 0xf1,
- 0xf2, 0xc2, 0xdc, 0x3e, 0x78, 0x0f, 0x66, 0xec, 0xed, 0x83, 0x63, 0x2c, 0x2f, 0xa6, 0x2c, 0x2c,
- 0x6e, 0xbf, 0x6b, 0x0b, 0xec, 0x12, 0xf1, 0xc8, 0x2b, 0x8e, 0x09, 0x0b, 0x47, 0xd9, 0xb1, 0xf4,
- 0xf8, 0x14, 0xe7, 0x77, 0xea, 0x5c, 0x9b, 0x13, 0x61, 0x8a, 0xaa, 0x13, 0x45, 0x3c, 0x3e, 0x1e,
- 0x5d, 0xda, 0xfb, 0x7d, 0x3c, 0xb6, 0xe4, 0xff, 0x61, 0x2e, 0xc8, 0xc9, 0x63, 0x9d, 0xa0, 0x4a,
- 0xe1, 0xf6, 0x51, 0x3a, 0xe1, 0xb5, 0xcf, 0x56, 0x37, 0x7c, 0x3e, 0x1f, 0xeb, 0x88, 0xe1, 0xf6,
- 0xf9, 0x58, 0x0f, 0xa8, 0x83, 0x54, 0x38, 0x4a, 0x0f, 0x6c, 0x83, 0x6e, 0xb5, 0xed, 0x70, 0x01,
- 0xed, 0x56, 0x9d, 0x2e, 0x20, 0x6b, 0x75, 0xe0, 0xe8, 0xad, 0xda, 0x66, 0xdb, 0x6e, 0xb5, 0xee,
- 0xc9, 0x43, 0x7f, 0x8e, 0x0b, 0x70, 0x09, 0x59, 0xdb, 0x83, 0x47, 0x67, 0xbc, 0x5b, 0x0b, 0xda,
- 0x8c, 0xdf, 0x0f, 0xc8, 0x47, 0x3f, 0xdd, 0xd1, 0x43, 0x64, 0x9d, 0x19, 0x22, 0x9d, 0xb9, 0x73,
- 0x94, 0xce, 0x84, 0x68, 0x25, 0xab, 0x57, 0x61, 0x0e, 0x23, 0xad, 0x90, 0xfd, 0x1a, 0xe7, 0xf5,
- 0x18, 0x59, 0xbf, 0xaf, 0xc1, 0x50, 0x43, 0x69, 0x8a, 0x34, 0x0a, 0xb0, 0x73, 0x00, 0x13, 0x8d,
- 0x70, 0x4b, 0x36, 0x94, 0x26, 0xf9, 0x47, 0x40, 0xa5, 0x03, 0x06, 0x1a, 0x8b, 0x04, 0x2a, 0x1d,
- 0x50, 0xd0, 0x22, 0x8c, 0xbe, 0xdf, 0x96, 0x9a, 0x86, 0x52, 0x97, 0x45, 0x16, 0x5d, 0xd7, 0x1f,
- 0x21, 0xba, 0x6e, 0xc4, 0x04, 0x22, 0x49, 0x3d, 0xfb, 0x71, 0xbf, 0xdf, 0x73, 0x65, 0xe3, 0xfa,
- 0xc7, 0x1c, 0x9c, 0x27, 0x98, 0x6d, 0x03, 0x24, 0xee, 0x29, 0xba, 0xa1, 0xee, 0x6a, 0x52, 0x43,
- 0xdc, 0x6e, 0x57, 0xf7, 0x65, 0xc3, 0x8c, 0x09, 0xb8, 0x7f, 0x72, 0x33, 0xd2, 0x97, 0x5d, 0x32,
- 0xdb, 0x5c, 0x24, 0x4d, 0x0a, 0x4f, 0x90, 0x4e, 0x59, 0x66, 0xcd, 0x53, 0xac, 0x67, 0xff, 0x59,
- 0x0c, 0xce, 0x75, 0xc1, 0x81, 0x5e, 0x83, 0xd3, 0xde, 0xa1, 0xd5, 0xd5, 0x87, 0xb2, 0x26, 0x92,
- 0xe8, 0x11, 0xb6, 0xc7, 0x38, 0xe3, 0x6e, 0x68, 0x05, 0x57, 0x20, 0xc1, 0x24, 0x41, 0xe0, 0xed,
- 0x56, 0xcb, 0x02, 0x8f, 0x05, 0x81, 0x6f, 0xe2, 0x0a, 0x14, 0xfc, 0x1c, 0xa4, 0x28, 0xf9, 0x44,
- 0x5d, 0xf9, 0x80, 0x3a, 0x27, 0x71, 0x01, 0x68, 0x56, 0x59, 0xf9, 0x40, 0x46, 0xb7, 0x21, 0xcd,
- 0x2a, 0xb8, 0x58, 0xfb, 0x74, 0x27, 0xd6, 0x5a, 0x0d, 0x09, 0xc3, 0x14, 0x96, 0x72, 0x18, 0x5d,
- 0x01, 0xe4, 0xc4, 0x25, 0xd2, 0xdd, 0xf0, 0x04, 0x69, 0x33, 0xe3, 0xa8, 0x99, 0xc7, 0xf9, 0xd9,
- 0x6f, 0x25, 0x9c, 0x0b, 0x0f, 0x26, 0x09, 0x3f, 0xcb, 0xc1, 0x05, 0xf9, 0xfd, 0xb6, 0xf2, 0x40,
- 0xaa, 0x93, 0x69, 0x59, 0xad, 0x4b, 0xba, 0x1e, 0x2a, 0x0b, 0xef, 0x9d, 0x84, 0x6e, 0x74, 0x64,
- 0x78, 0xf9, 0xff, 0xa4, 0xa3, 0x2b, 0x79, 0xdc, 0x13, 0x9f, 0x04, 0xfc, 0x14, 0x07, 0x59, 0x1b,
- 0xbe, 0xe8, 0xa9, 0x8e, 0x6e, 0x41, 0xc6, 0x72, 0x40, 0xc4, 0x1e, 0x22, 0x53, 0x47, 0x4c, 0x07,
- 0x84, 0x51, 0xf6, 0x45, 0x98, 0xf2, 0x53, 0x85, 0x70, 0x94, 0x0a, 0xc0, 0x84, 0xb7, 0xa3, 0x98,
- 0xb7, 0xd9, 0x1f, 0x8b, 0xc3, 0xa9, 0xd0, 0xc1, 0xa1, 0xdb, 0xc0, 0x07, 0xe3, 0x0c, 0x90, 0xcf,
- 0x27, 0x82, 0xf0, 0x3b, 0xa4, 0x34, 0x1c, 0x97, 0x5f, 0x58, 0x03, 0x71, 0xf5, 0x22, 0xb2, 0x3f,
- 0xc4, 0x05, 0xcb, 0xac, 0x78, 0xc2, 0xd2, 0xe0, 0xe5, 0xe6, 0xb1, 0xa4, 0xfd, 0x67, 0x06, 0x9d,
- 0xcb, 0x5a, 0x26, 0xed, 0xff, 0x9c, 0x83, 0x67, 0xed, 0xa5, 0x69, 0x54, 0x0d, 0xf8, 0xde, 0x49,
- 0xd8, 0x66, 0x47, 0x86, 0x57, 0xea, 0x2f, 0x59, 0x5d, 0xba, 0xdb, 0x59, 0xfd, 0xfd, 0x93, 0x18,
- 0x64, 0x6d, 0x34, 0x7f, 0xb2, 0x84, 0x1f, 0xe5, 0xe0, 0x6c, 0xb3, 0xdd, 0x10, 0x6b, 0xd8, 0xd5,
- 0x6e, 0x56, 0x0d, 0xd1, 0x43, 0x67, 0x9d, 0x09, 0x56, 0xb6, 0xd9, 0x6e, 0x14, 0x58, 0x9d, 0xb2,
- 0x6b, 0xdc, 0x3a, 0x7a, 0x1b, 0x26, 0x0c, 0xb5, 0xe5, 0x87, 0xec, 0x49, 0x45, 0x22, 0x43, 0x6d,
- 0x79, 0x10, 0x67, 0xff, 0x6a, 0x1c, 0x4e, 0x85, 0xd2, 0x1f, 0x6d, 0xc0, 0xd3, 0xe1, 0x42, 0xe1,
- 0x9f, 0x9b, 0xe7, 0x43, 0xd8, 0xe5, 0x98, 0x9e, 0x1d, 0x31, 0xfa, 0x67, 0x68, 0x18, 0xc6, 0xef,
- 0xdb, 0x24, 0xed, 0x20, 0xbc, 0x27, 0x3a, 0x49, 0x7f, 0x3a, 0xe1, 0xdd, 0xd8, 0x61, 0x13, 0xf5,
- 0x0b, 0x1c, 0x64, 0x7d, 0x4e, 0xab, 0x35, 0x3f, 0x99, 0x54, 0xef, 0x9c, 0x94, 0xdf, 0xea, 0xc9,
- 0xf4, 0xce, 0xcf, 0xe9, 0xfd, 0xe0, 0xe2, 0xec, 0x67, 0x38, 0x38, 0xed, 0x06, 0x65, 0xab, 0x5a,
- 0x46, 0x8c, 0x93, 0x9a, 0x90, 0xf3, 0x30, 0x6e, 0x9f, 0x7d, 0x5a, 0xcb, 0x16, 0x26, 0x3c, 0xc8,
- 0x2a, 0xb2, 0x14, 0x69, 0xf6, 0x5f, 0xc7, 0xe0, 0x6c, 0xc7, 0x31, 0xa1, 0x0b, 0x90, 0xc6, 0x9e,
- 0xad, 0x8d, 0x8c, 0xca, 0xf6, 0x70, 0x43, 0x69, 0x5a, 0x68, 0x48, 0x25, 0xe9, 0xc0, 0xd7, 0xe2,
- 0x70, 0x43, 0x3a, 0xb0, 0x2b, 0x79, 0x24, 0x33, 0xe1, 0x93, 0xcc, 0x1f, 0xf3, 0x49, 0x26, 0xbd,
- 0xa1, 0x56, 0x7b, 0x4c, 0xec, 0x73, 0xf1, 0x20, 0x92, 0x78, 0x0e, 0x86, 0x88, 0xe7, 0x77, 0x13,
- 0xa1, 0x1b, 0x1e, 0x4c, 0x4e, 0x7f, 0x99, 0x83, 0x0b, 0xe1, 0x0b, 0x1b, 0xaf, 0xc0, 0x1e, 0x9c,
- 0xf8, 0xda, 0x26, 0xac, 0xd4, 0xe7, 0x58, 0xd5, 0xba, 0xd4, 0xcb, 0x7e, 0x81, 0x83, 0xa7, 0x42,
- 0x90, 0x3d, 0x1e, 0xa1, 0x7e, 0x01, 0x26, 0x6d, 0xa1, 0x6e, 0x69, 0xea, 0xb6, 0xb4, 0xad, 0xd4,
- 0x4d, 0x21, 0xe3, 0x84, 0x09, 0xab, 0x70, 0xc3, 0x2e, 0xcb, 0x7e, 0x33, 0x06, 0x17, 0xa3, 0x0d,
- 0x19, 0x5d, 0x82, 0x51, 0x2c, 0xe1, 0x4e, 0xcc, 0x1c, 0xc1, 0x3c, 0xd2, 0x50, 0x9a, 0x0e, 0x9c,
- 0xa4, 0xa2, 0x74, 0x10, 0xd0, 0x85, 0x91, 0x86, 0x74, 0xe0, 0xac, 0xd8, 0x55, 0xd2, 0x3f, 0x17,
- 0x22, 0xe9, 0x0f, 0xfe, 0xd8, 0xf8, 0x7e, 0x62, 0xb2, 0xbf, 0x98, 0x34, 0x43, 0x57, 0xf8, 0x2d,
- 0x18, 0x71, 0x9b, 0x25, 0xb4, 0x60, 0x5e, 0x8c, 0x8b, 0xb2, 0x24, 0x66, 0x97, 0xe6, 0x82, 0x83,
- 0x75, 0x3e, 0x1f, 0x87, 0x04, 0x5d, 0xf4, 0x3e, 0x0d, 0x69, 0xa5, 0x69, 0xc8, 0xbb, 0xb2, 0xe6,
- 0x58, 0x6e, 0xc7, 0x4b, 0x7d, 0xc2, 0x30, 0xcb, 0xa6, 0xd5, 0xce, 0x43, 0x6a, 0xa7, 0xae, 0x4a,
- 0x86, 0x63, 0x61, 0xcd, 0x95, 0xfa, 0x04, 0x20, 0x99, 0xb4, 0xca, 0x05, 0x18, 0xd6, 0x0d, 0x4d,
- 0x69, 0xee, 0x8a, 0xee, 0xdb, 0x7b, 0x29, 0x9a, 0x6b, 0x35, 0xb7, 0xad, 0xaa, 0x75, 0x59, 0x32,
- 0x57, 0xf7, 0xfd, 0x2c, 0x8e, 0x7b, 0x98, 0x65, 0x5b, 0x4b, 0x71, 0xeb, 0xae, 0x0a, 0xab, 0x98,
- 0xe8, 0x76, 0x63, 0xa5, 0xd4, 0x27, 0x8c, 0x58, 0x40, 0x14, 0xcd, 0x2b, 0x00, 0x38, 0x87, 0x61,
- 0x18, 0x70, 0x6f, 0x7f, 0x1b, 0x87, 0x2d, 0x99, 0x40, 0xaf, 0xef, 0x14, 0xa4, 0xc3, 0x52, 0x9f,
- 0x30, 0x84, 0xeb, 0x52, 0xc0, 0x05, 0x80, 0x9a, 0x64, 0x98, 0x80, 0x74, 0xbb, 0x66, 0xcc, 0x05,
- 0x58, 0x90, 0x0c, 0x19, 0xc3, 0xe0, 0x6a, 0x14, 0x26, 0x0f, 0x63, 0x35, 0xe9, 0x50, 0x54, 0x77,
- 0xc4, 0x87, 0xb2, 0xbc, 0xcf, 0x40, 0x93, 0x24, 0xc4, 0x6c, 0xca, 0x03, 0x7a, 0xb8, 0xbe, 0xf3,
- 0xb6, 0x2c, 0xef, 0xe3, 0x1e, 0xd7, 0xcc, 0x04, 0x41, 0x62, 0x6d, 0x89, 0xfe, 0x00, 0x0c, 0x59,
- 0x17, 0xbd, 0xd0, 0xeb, 0xe4, 0xee, 0x21, 0xbb, 0x59, 0xd6, 0xf9, 0x90, 0xa0, 0xc0, 0xae, 0x94,
- 0x95, 0xfa, 0x84, 0x64, 0x8d, 0xfd, 0x5f, 0x1c, 0x81, 0xe1, 0x96, 0xa4, 0xe9, 0x72, 0x8d, 0x5e,
- 0x80, 0xe6, 0x7f, 0x3c, 0x06, 0x49, 0xb3, 0x22, 0x7a, 0x9a, 0x5c, 0x0e, 0x35, 0x65, 0xca, 0x3f,
- 0x48, 0x72, 0x5f, 0x54, 0x46, 0x2f, 0x43, 0xca, 0x31, 0x3a, 0x76, 0xb1, 0x3b, 0x64, 0x5c, 0x98,
- 0x2a, 0xec, 0x2f, 0x9a, 0x85, 0x7e, 0xd2, 0xed, 0x78, 0x27, 0xe2, 0x0b, 0xa4, 0x0e, 0x2a, 0x02,
- 0x61, 0x81, 0xf8, 0x81, 0xda, 0x34, 0x2f, 0x79, 0x5e, 0xee, 0x32, 0x4e, 0x82, 0x63, 0x4b, 0x6d,
- 0xca, 0x42, 0xd2, 0x60, 0xff, 0xb2, 0xcf, 0x43, 0xd2, 0xcc, 0x45, 0x4f, 0xc3, 0x08, 0xbd, 0x5f,
- 0x24, 0x36, 0x94, 0x66, 0xdb, 0x0c, 0x76, 0x4a, 0x08, 0x69, 0x9a, 0xbb, 0x4a, 0x33, 0xf9, 0xef,
- 0x72, 0x90, 0xf1, 0x86, 0xf8, 0xa2, 0x3a, 0x9c, 0xb2, 0x83, 0x99, 0x0c, 0x57, 0x24, 0xa9, 0xce,
- 0xc8, 0x35, 0xd7, 0xe5, 0xac, 0xc6, 0x1d, 0x7f, 0xaa, 0x97, 0xfa, 0x84, 0x69, 0x25, 0xb8, 0x08,
- 0xc9, 0x30, 0xc5, 0xae, 0x36, 0x79, 0x9b, 0xa2, 0x1c, 0xbf, 0xd2, 0xf1, 0x9a, 0x93, 0xbf, 0xa1,
- 0x49, 0x2d, 0xa8, 0x60, 0x31, 0x03, 0x23, 0x6e, 0xfc, 0xfc, 0x6f, 0x24, 0x61, 0x7a, 0x43, 0x53,
- 0x1a, 0xc4, 0x11, 0x76, 0x57, 0x47, 0x02, 0x8c, 0x68, 0x72, 0xab, 0x2e, 0xe1, 0xe5, 0x88, 0x33,
- 0x10, 0xe1, 0x99, 0xd0, 0xce, 0x90, 0xca, 0x4c, 0x9f, 0xb1, 0x63, 0xe3, 0x34, 0x43, 0xc1, 0xc8,
- 0x7a, 0x1b, 0xd8, 0xf5, 0x06, 0x77, 0x98, 0xc1, 0x85, 0x8e, 0x77, 0x60, 0x2c, 0x64, 0xc3, 0x9a,
- 0x23, 0x8d, 0xfe, 0x7f, 0x98, 0xac, 0xee, 0x49, 0xe4, 0x0e, 0x84, 0x46, 0x1e, 0x1d, 0x71, 0xc7,
- 0x11, 0x84, 0x45, 0x37, 0xe5, 0x4d, 0x98, 0x55, 0x49, 0xdf, 0xb7, 0x50, 0x8f, 0x57, 0xfd, 0xd9,
- 0xc8, 0x80, 0xb3, 0x55, 0xed, 0xb0, 0x65, 0xa8, 0xa2, 0x49, 0x88, 0x9d, 0x9d, 0x03, 0x71, 0xa7,
- 0x25, 0xbb, 0x43, 0x09, 0x42, 0xdf, 0xf7, 0x20, 0xb0, 0x8c, 0x2c, 0xb7, 0x76, 0x0e, 0x6e, 0xb5,
- 0x6c, 0xba, 0x9c, 0xaa, 0x86, 0x15, 0xa2, 0x16, 0x9c, 0xde, 0x51, 0x0e, 0xe4, 0x1a, 0xdd, 0x5b,
- 0xa0, 0x46, 0x02, 0x6b, 0x56, 0x57, 0x48, 0xc1, 0x7c, 0xe8, 0xe9, 0xd2, 0x81, 0x5c, 0xc3, 0x86,
- 0x71, 0xd1, 0x84, 0xb3, 0x9a, 0x9c, 0xd9, 0x09, 0x29, 0x43, 0x65, 0xc8, 0xf8, 0x9a, 0x19, 0xe8,
- 0x7c, 0x0f, 0xc8, 0x87, 0x7d, 0x74, 0xdb, 0x83, 0xd4, 0x80, 0xb3, 0x26, 0xd5, 0x1e, 0x2a, 0xc6,
- 0x9e, 0x7d, 0x7d, 0xdf, 0x6c, 0x61, 0xb0, 0x23, 0xf1, 0x18, 0x65, 0xde, 0x56, 0x8c, 0x3d, 0x73,
- 0x42, 0xd9, 0xc4, 0xd3, 0xc2, 0x0a, 0xd1, 0x1d, 0xc8, 0x10, 0x35, 0xd2, 0x92, 0x34, 0x4b, 0xc6,
- 0x92, 0x1d, 0x2f, 0x7b, 0x62, 0x75, 0xb1, 0x21, 0x69, 0xb6, 0x94, 0x11, 0x43, 0x62, 0xe7, 0xa0,
- 0xb7, 0x01, 0x31, 0x29, 0xd8, 0x93, 0xf4, 0x3d, 0x13, 0xe9, 0x50, 0xc7, 0x78, 0x4c, 0xca, 0xfa,
- 0x92, 0xa4, 0xef, 0xd9, 0x71, 0x23, 0x55, 0x4f, 0x1e, 0xb9, 0xff, 0x82, 0x55, 0xbb, 0xbe, 0xa7,
- 0xec, 0x58, 0x9d, 0x4d, 0x75, 0xa4, 0x3b, 0x56, 0x7d, 0x65, 0x5c, 0xdd, 0xa6, 0x7b, 0xcd, 0x9d,
- 0x85, 0x34, 0x38, 0xcd, 0xba, 0x5b, 0x93, 0x0d, 0x59, 0x6b, 0x28, 0x4d, 0x72, 0x10, 0x67, 0xe2,
- 0x1f, 0x8e, 0x20, 0xb2, 0x05, 0x27, 0xa0, 0x57, 0x64, 0x03, 0x0a, 0x03, 0x14, 0xcb, 0xb7, 0x38,
- 0x18, 0x71, 0x53, 0x16, 0xdd, 0x85, 0x51, 0xc2, 0x15, 0x43, 0x15, 0xd9, 0xdd, 0x25, 0xf6, 0xb4,
- 0xc1, 0x5c, 0x24, 0xce, 0x58, 0x49, 0x21, 0x8d, 0xd1, 0x54, 0xd4, 0x22, 0x45, 0xc2, 0x7f, 0x8a,
- 0xa3, 0x3a, 0x1f, 0x97, 0xa1, 0x53, 0x30, 0x59, 0x59, 0x5e, 0x2d, 0x8a, 0x1b, 0x39, 0xa1, 0xe2,
- 0x09, 0xba, 0x4e, 0x42, 0xff, 0xbd, 0x62, 0x4e, 0xc8, 0x70, 0x68, 0x08, 0x12, 0xab, 0xeb, 0x6b,
- 0x95, 0x52, 0x26, 0x86, 0x32, 0x30, 0x5c, 0xc8, 0xdd, 0x13, 0xd7, 0x6f, 0x89, 0x34, 0x27, 0x8e,
- 0x46, 0x21, 0xc5, 0x72, 0xde, 0x2e, 0x16, 0xdf, 0xca, 0xf4, 0xe3, 0x2a, 0xf8, 0x1f, 0xce, 0x21,
- 0xf0, 0x09, 0x5c, 0xa5, 0xb4, 0xbe, 0x29, 0xe0, 0x9c, 0x42, 0xee, 0x5e, 0x66, 0x80, 0x2f, 0x43,
- 0xc6, 0xcb, 0x71, 0xf4, 0x06, 0x00, 0xe3, 0x43, 0xf7, 0xeb, 0xaa, 0x14, 0x98, 0x5c, 0x57, 0xad,
- 0x9a, 0x7f, 0xf9, 0x6f, 0x72, 0x70, 0x2a, 0x94, 0x1f, 0xc7, 0x46, 0x4f, 0x22, 0x46, 0xda, 0x9a,
- 0xa6, 0xee, 0x4a, 0x86, 0xe3, 0xdd, 0x93, 0xa8, 0x97, 0xef, 0xc7, 0x2c, 0x58, 0x33, 0x0b, 0xbd,
- 0x0a, 0x83, 0xe4, 0xd6, 0xf6, 0x81, 0x79, 0xb8, 0xd9, 0xf5, 0x76, 0x2d, 0xab, 0xce, 0xaf, 0x03,
- 0xf2, 0x1b, 0x0f, 0x74, 0x0d, 0x86, 0x9a, 0xf2, 0xc3, 0x5e, 0x0e, 0x82, 0x9a, 0xf2, 0x43, 0xf2,
- 0x8f, 0x3f, 0x0d, 0xa7, 0x42, 0xf5, 0x07, 0x3f, 0x02, 0xc3, 0x4e, 0xbb, 0xc2, 0xff, 0x41, 0x0c,
- 0xd2, 0xd8, 0x28, 0xe8, 0x15, 0x75, 0x79, 0xb7, 0xa9, 0x6a, 0x32, 0x9a, 0x03, 0x64, 0x99, 0x03,
- 0x1d, 0xcb, 0xab, 0xbe, 0xaf, 0xd0, 0x5b, 0xae, 0x43, 0x64, 0x22, 0x5b, 0x65, 0x15, 0xb5, 0xbc,
- 0xaf, 0xb4, 0xd0, 0x21, 0x9c, 0xae, 0xaa, 0x8d, 0x86, 0xda, 0x14, 0xdd, 0x60, 0x0a, 0x41, 0xc7,
- 0xfc, 0xa5, 0x57, 0x3b, 0xd8, 0x23, 0xab, 0xe9, 0xb9, 0x3c, 0xc1, 0xe3, 0xca, 0xc3, 0xaa, 0xbb,
- 0x6a, 0x65, 0x9b, 0x0d, 0xd3, 0x32, 0xfe, 0xb3, 0x1c, 0x8c, 0x07, 0xc0, 0xa0, 0x8b, 0xc0, 0xe7,
- 0xd7, 0x57, 0x57, 0xd7, 0xd7, 0xc4, 0x7c, 0x29, 0x27, 0x94, 0xc5, 0xca, 0xba, 0xb8, 0xbc, 0xb4,
- 0xb6, 0x2e, 0x78, 0x1f, 0xf8, 0x48, 0xc1, 0xe0, 0xda, 0xe6, 0x6a, 0x51, 0x58, 0xce, 0x67, 0x38,
- 0x34, 0x01, 0x99, 0xdc, 0xca, 0x46, 0x29, 0x27, 0x6e, 0x6e, 0x6c, 0x14, 0x05, 0x31, 0x9f, 0x2b,
- 0x17, 0x33, 0x31, 0x3b, 0x77, 0x65, 0xfd, 0x6d, 0x33, 0x97, 0x4c, 0x93, 0x8d, 0xcd, 0xb5, 0x7c,
- 0x65, 0x33, 0x57, 0x59, 0x5e, 0x5f, 0xcb, 0xf4, 0xa3, 0x11, 0x80, 0xb7, 0x4b, 0xcb, 0x95, 0x62,
- 0x79, 0x23, 0x97, 0x2f, 0x66, 0x12, 0x8b, 0xc3, 0x00, 0x36, 0x35, 0xf8, 0x6f, 0xe0, 0x7e, 0x06,
- 0x98, 0xd8, 0x67, 0x61, 0x0c, 0x9b, 0x6e, 0x62, 0x78, 0xcc, 0x62, 0x16, 0x12, 0x9d, 0x61, 0x05,
- 0x16, 0x18, 0x7a, 0x0a, 0x46, 0x9a, 0xed, 0xc6, 0xb6, 0xac, 0x61, 0xe2, 0xe2, 0x52, 0x76, 0xcd,
- 0x78, 0x98, 0xe6, 0x56, 0x54, 0x8c, 0x18, 0x5d, 0xc0, 0x3e, 0xc6, 0x03, 0x59, 0xd3, 0x65, 0x51,
- 0xd5, 0x6a, 0x32, 0xbd, 0x04, 0x9a, 0xc4, 0xce, 0x03, 0xc9, 0x5c, 0xc7, 0x79, 0xe8, 0x2e, 0x4c,
- 0x04, 0xf2, 0xaa, 0xbf, 0x63, 0xc4, 0xba, 0x8b, 0xc6, 0x02, 0xaa, 0xfa, 0xf9, 0xf1, 0x65, 0x0e,
- 0x66, 0xc2, 0x6c, 0x30, 0x5a, 0x84, 0x94, 0x77, 0x6b, 0xb3, 0x8b, 0x4c, 0xd3, 0x50, 0x0d, 0xa8,
- 0xdb, 0xdb, 0x9c, 0x8b, 0x90, 0xf2, 0x6e, 0x66, 0x46, 0xc3, 0xd1, 0xb6, 0x37, 0x36, 0x9f, 0xf2,
- 0x6f, 0x6c, 0x72, 0xac, 0x96, 0xbd, 0xb2, 0xe6, 0x3f, 0x1d, 0x83, 0x51, 0xef, 0x08, 0x96, 0x60,
- 0xd0, 0xdc, 0xa7, 0xa7, 0xfb, 0x0f, 0x57, 0xa3, 0x39, 0x08, 0x2c, 0x2d, 0x98, 0xd0, 0xe4, 0x52,
- 0x02, 0xdb, 0x34, 0x98, 0x83, 0x78, 0x43, 0x69, 0x46, 0x9a, 0xe1, 0xb8, 0x22, 0xa9, 0x2f, 0x1d,
- 0x44, 0x3a, 0xdf, 0xc5, 0x15, 0xd1, 0x32, 0x8c, 0x31, 0x7f, 0x81, 0x3c, 0xb0, 0x60, 0x2f, 0x50,
- 0xbb, 0x41, 0x67, 0x1c, 0x60, 0x54, 0xaf, 0xfc, 0x72, 0xbf, 0xa9, 0x92, 0x83, 0x1c, 0xb7, 0xc2,
- 0x51, 0x54, 0x32, 0xa5, 0xbb, 0x43, 0x2f, 0x3b, 0xd4, 0x68, 0xac, 0x27, 0x35, 0x8a, 0x74, 0x18,
- 0x65, 0x6a, 0x48, 0xaa, 0xb7, 0xf6, 0xa4, 0x6d, 0xd9, 0x60, 0x6f, 0xb1, 0x95, 0x7a, 0x75, 0x50,
- 0xe7, 0x6e, 0xed, 0x1c, 0x50, 0xad, 0xb2, 0x46, 0x82, 0x9e, 0x72, 0x0c, 0x1f, 0xf6, 0x8e, 0x68,
- 0x13, 0x66, 0x0e, 0x7a, 0x06, 0xd8, 0x73, 0x56, 0x76, 0xa3, 0x09, 0xa6, 0x28, 0x47, 0x68, 0x81,
- 0x55, 0x75, 0x0a, 0x12, 0x9a, 0x54, 0x53, 0x0e, 0x88, 0x6f, 0x99, 0x20, 0x4f, 0xd3, 0xe1, 0x64,
- 0x98, 0x25, 0x4a, 0x1e, 0xd5, 0x12, 0xf1, 0x3f, 0xc9, 0xc1, 0x74, 0xc8, 0x08, 0xd0, 0x2c, 0x5c,
- 0xbc, 0x75, 0xeb, 0x1d, 0x91, 0x29, 0xc7, 0xb5, 0x5c, 0x65, 0xf9, 0x6e, 0x51, 0x24, 0xfa, 0x6d,
- 0xb1, 0x58, 0xe9, 0xa4, 0x1c, 0xb1, 0xd1, 0x2f, 0xbe, 0x93, 0x2b, 0x14, 0xf3, 0xcb, 0xab, 0xb9,
- 0x95, 0x4c, 0x0c, 0x9d, 0x81, 0x19, 0x5b, 0x4f, 0x52, 0x14, 0xa2, 0x59, 0x3d, 0x8e, 0xc6, 0x20,
- 0xed, 0xce, 0xea, 0x5f, 0x04, 0x48, 0x9a, 0x34, 0xe2, 0xbf, 0xc7, 0xc1, 0x90, 0x25, 0x03, 0x68,
- 0x19, 0x86, 0x88, 0xff, 0xa4, 0x98, 0x57, 0x0e, 0xc3, 0x57, 0x59, 0x15, 0xb3, 0x9e, 0x05, 0x4d,
- 0x76, 0x2f, 0xcc, 0x5c, 0x8c, 0xaa, 0xdd, 0x7c, 0xa8, 0x49, 0xad, 0x96, 0x6c, 0x6a, 0x87, 0x30,
- 0x54, 0x9b, 0x66, 0x3d, 0x17, 0x2a, 0x0b, 0x1a, 0xad, 0x42, 0x6a, 0xbf, 0xa1, 0x8b, 0x26, 0xb2,
- 0xce, 0xcb, 0xaa, 0xb7, 0x1a, 0xfa, 0xdb, 0x7e, 0x6c, 0xb0, 0x6f, 0x65, 0x2f, 0x26, 0x61, 0x80,
- 0x86, 0x57, 0xf1, 0x57, 0x01, 0xf9, 0x87, 0x81, 0xa6, 0x9d, 0x37, 0x7b, 0xe8, 0xb4, 0x20, 0x19,
- 0xfc, 0xb3, 0x80, 0xfc, 0x5d, 0x45, 0x93, 0x10, 0x37, 0xa7, 0xd9, 0x30, 0xad, 0x8d, 0xd3, 0xfc,
- 0x1e, 0x8c, 0x07, 0x74, 0x05, 0xab, 0x3c, 0x86, 0x41, 0xf4, 0x40, 0x01, 0xcb, 0xc7, 0xb5, 0x9e,
- 0x85, 0x51, 0x7b, 0x06, 0x3b, 0xee, 0x12, 0xd1, 0x9a, 0x69, 0x6b, 0x92, 0xae, 0xe1, 0x6e, 0x7d,
- 0x87, 0x83, 0x51, 0x8f, 0x3f, 0x8e, 0xae, 0x42, 0xc6, 0xa1, 0x9d, 0xc5, 0x9a, 0x74, 0xc8, 0x36,
- 0x1d, 0x28, 0x86, 0x11, 0x5b, 0x09, 0x17, 0xa4, 0x43, 0x1d, 0x57, 0x77, 0x18, 0x04, 0x5a, 0x3d,
- 0xe6, 0xa8, 0x6e, 0xeb, 0x7d, 0x52, 0xfd, 0xc8, 0x1e, 0x16, 0xca, 0xb9, 0x54, 0x53, 0x7f, 0x34,
- 0xd5, 0x44, 0x82, 0x49, 0x2d, 0x3d, 0x95, 0x84, 0x81, 0x86, 0x6c, 0xec, 0xa9, 0x35, 0xfe, 0x51,
- 0x0c, 0xa6, 0x43, 0x36, 0x39, 0x90, 0x01, 0xa3, 0xfe, 0xdd, 0x92, 0x4e, 0x31, 0xc2, 0x21, 0x88,
- 0x42, 0xf2, 0x29, 0x5d, 0xbc, 0x4d, 0x64, 0xbf, 0xcc, 0xc1, 0x54, 0x30, 0xc0, 0xb1, 0xdf, 0x35,
- 0x6c, 0xc2, 0x4c, 0xcb, 0xdc, 0x20, 0xf1, 0xec, 0xce, 0xb0, 0xe9, 0x35, 0x17, 0x1e, 0x7e, 0x18,
- 0xb4, 0xaf, 0x42, 0x87, 0x30, 0xdd, 0x0a, 0x2e, 0xe5, 0xff, 0x42, 0x1c, 0xc6, 0x09, 0xfb, 0x3c,
- 0xe3, 0xb8, 0x01, 0x03, 0x24, 0x60, 0x34, 0x62, 0x68, 0x38, 0x6d, 0x85, 0x81, 0xa0, 0x02, 0x0c,
- 0x55, 0xd5, 0x66, 0x4d, 0x71, 0xbc, 0x5c, 0x73, 0xb1, 0xe3, 0x96, 0x52, 0xde, 0xac, 0x2d, 0xd8,
- 0x80, 0x68, 0xbf, 0x03, 0x29, 0xfa, 0x8f, 0x42, 0x8a, 0x52, 0x5f, 0x28, 0x1d, 0x3a, 0x6f, 0xc0,
- 0x25, 0x4e, 0x78, 0x03, 0x2e, 0x60, 0x01, 0xfb, 0x35, 0x0e, 0x26, 0x03, 0xb7, 0xd7, 0x90, 0x08,
- 0x93, 0xf4, 0x19, 0xa1, 0x60, 0x41, 0x9f, 0xed, 0xc4, 0x18, 0x37, 0x2e, 0x61, 0x62, 0xc7, 0x9f,
- 0xa9, 0xa3, 0x7b, 0x30, 0xce, 0x76, 0x03, 0xf5, 0x76, 0xab, 0xa5, 0xc9, 0xba, 0xce, 0xb6, 0x02,
- 0x3b, 0x3d, 0xe5, 0x48, 0xfb, 0x5a, 0xb6, 0x01, 0x04, 0xa4, 0x79, 0xb3, 0x74, 0xfe, 0x1e, 0x8c,
- 0xf9, 0x2a, 0xba, 0xa5, 0x83, 0x3b, 0xa2, 0x74, 0xf0, 0x5f, 0x4c, 0xc0, 0xa8, 0xa7, 0x18, 0x55,
- 0x20, 0x25, 0x1f, 0xd8, 0x23, 0xe8, 0xfc, 0x9e, 0xa7, 0x07, 0x78, 0xae, 0x68, 0x43, 0x0a, 0x4e,
- 0x34, 0xd9, 0x5f, 0xc2, 0xb6, 0xd3, 0x6a, 0xe3, 0x18, 0x01, 0xf8, 0xb7, 0x21, 0xa9, 0xb6, 0x64,
- 0x4d, 0x32, 0xd8, 0x4b, 0x31, 0x23, 0x1d, 0xf6, 0x36, 0xeb, 0x84, 0x39, 0x52, 0x7d, 0x9d, 0x01,
- 0xb0, 0x20, 0x6a, 0x13, 0xde, 0x3e, 0x9f, 0xe9, 0x8f, 0x7c, 0x3e, 0x93, 0x7d, 0x0f, 0xc0, 0x1a,
- 0x87, 0x8e, 0x36, 0x00, 0x2c, 0x6a, 0x9a, 0xc2, 0xf4, 0x5c, 0x44, 0x5a, 0xd9, 0x1c, 0x71, 0xe0,
- 0xc8, 0x7e, 0x36, 0x06, 0x29, 0x07, 0x15, 0x51, 0x03, 0x9b, 0x9b, 0x5d, 0x12, 0x06, 0x6c, 0x8d,
- 0x9b, 0x6e, 0xc1, 0x2c, 0xf6, 0xce, 0x93, 0xb9, 0x15, 0x8a, 0xca, 0x24, 0x88, 0x30, 0x5a, 0x77,
- 0x67, 0xa0, 0xb2, 0x6b, 0x40, 0x94, 0xf9, 0xcf, 0xf7, 0x3a, 0x20, 0x3c, 0x6d, 0x1d, 0x68, 0xf8,
- 0x9b, 0x30, 0xea, 0x69, 0x18, 0x3d, 0x09, 0x67, 0x56, 0xd6, 0x97, 0x96, 0xf3, 0xb9, 0x15, 0x71,
- 0x7d, 0xa3, 0x28, 0xe4, 0x2a, 0xeb, 0x82, 0xc7, 0x91, 0x1b, 0x84, 0x78, 0x6e, 0xad, 0x90, 0xe1,
- 0xac, 0x23, 0x96, 0xbf, 0xc7, 0xc1, 0x54, 0xf0, 0xfb, 0x10, 0x78, 0x45, 0x6a, 0x4d, 0x6c, 0xcf,
- 0xb5, 0xe7, 0x8c, 0xa3, 0x80, 0xde, 0x79, 0xde, 0x85, 0x19, 0xb7, 0x16, 0x10, 0xf5, 0x76, 0xa3,
- 0x21, 0x69, 0x8a, 0x15, 0x21, 0x7f, 0x25, 0xd2, 0xeb, 0x14, 0x65, 0x02, 0x75, 0x28, 0x4c, 0x1b,
- 0x01, 0xd9, 0x8a, 0xac, 0xf3, 0x9f, 0x1d, 0x80, 0xc9, 0x40, 0x90, 0x63, 0xde, 0xe7, 0xb7, 0x2e,
- 0x2d, 0xc4, 0x7a, 0xb9, 0xb4, 0x70, 0xd7, 0xab, 0x2e, 0x19, 0x77, 0x7b, 0xd4, 0xff, 0x82, 0x07,
- 0x4b, 0xb8, 0x6a, 0x4d, 0x9c, 0x90, 0x6a, 0xbd, 0x63, 0x3d, 0x05, 0x68, 0xaa, 0x56, 0xb6, 0xd1,
- 0x1d, 0x5d, 0xad, 0x8e, 0xb8, 0xd5, 0x2a, 0xaa, 0xc0, 0x20, 0x3d, 0xb4, 0x35, 0xa3, 0x7f, 0xae,
- 0xf7, 0xc2, 0xf1, 0x39, 0x93, 0xf3, 0xf4, 0xd1, 0x01, 0x13, 0x55, 0xb0, 0x14, 0x0e, 0x06, 0x4b,
- 0x61, 0xf6, 0xa7, 0x38, 0x48, 0xbb, 0xf0, 0xd8, 0x27, 0xbf, 0x9c, 0xe3, 0xe4, 0x17, 0xdd, 0x83,
- 0x7e, 0xeb, 0x86, 0xc7, 0x48, 0xa8, 0x47, 0x16, 0xdc, 0x4f, 0x0f, 0x79, 0x49, 0x33, 0x79, 0xb5,
- 0x26, 0x0b, 0x04, 0x25, 0x9a, 0x81, 0xc1, 0x1a, 0x3d, 0x44, 0x67, 0xb7, 0xd2, 0xcd, 0x24, 0xff,
- 0x1e, 0xcc, 0x84, 0xc1, 0xe2, 0xc5, 0x58, 0x45, 0xc8, 0xad, 0x95, 0x6f, 0xad, 0x0b, 0xab, 0x64,
- 0x1f, 0x49, 0x14, 0x8a, 0xe5, 0xcd, 0x95, 0x8a, 0x98, 0x5f, 0x2f, 0x04, 0xec, 0x54, 0x95, 0x37,
- 0xf3, 0xf9, 0x62, 0xb9, 0x4c, 0x77, 0x70, 0x8b, 0x82, 0xb0, 0x2e, 0x64, 0x62, 0xbc, 0x0a, 0xc9,
- 0x72, 0x75, 0x4f, 0xae, 0xb5, 0xeb, 0x32, 0xba, 0x07, 0x59, 0x4d, 0xae, 0xb6, 0x35, 0x8d, 0x44,
- 0x85, 0xb4, 0x64, 0x4d, 0x51, 0x6b, 0xa2, 0xf9, 0xa4, 0x3d, 0x9b, 0x1c, 0xa7, 0x7c, 0xa7, 0xc8,
- 0x05, 0x56, 0xa1, 0xd4, 0x27, 0xcc, 0xd8, 0xe0, 0x1b, 0x04, 0xda, 0x2c, 0xc3, 0xee, 0x2f, 0x7d,
- 0xbb, 0x82, 0xff, 0x46, 0x1c, 0x46, 0xbd, 0x6f, 0x35, 0xf8, 0xd6, 0x2e, 0xf1, 0xe8, 0x4f, 0x13,
- 0x78, 0xde, 0x12, 0x88, 0xfb, 0xde, 0x12, 0x40, 0x6f, 0xba, 0xdf, 0x17, 0xed, 0xef, 0x76, 0x1a,
- 0x4e, 0x3b, 0xe0, 0x7c, 0x64, 0xf4, 0x4d, 0x48, 0xb5, 0x5b, 0xf6, 0x39, 0x72, 0x22, 0x22, 0x06,
- 0x0a, 0x43, 0x30, 0xf8, 0x1f, 0xb2, 0x19, 0x38, 0xf2, 0x43, 0x36, 0xd7, 0x7f, 0x86, 0xfb, 0x24,
- 0xf7, 0x79, 0x0e, 0x78, 0x5c, 0xd7, 0xf3, 0x80, 0x8e, 0x97, 0xb2, 0x6f, 0xaa, 0xda, 0xae, 0xd4,
- 0x54, 0x3e, 0xa0, 0x13, 0x78, 0xfe, 0x43, 0x67, 0xf2, 0xa3, 0x79, 0xcf, 0xcb, 0x35, 0xfa, 0xfc,
- 0x87, 0xde, 0xd7, 0x38, 0x3e, 0x42, 0x2f, 0xb7, 0xe8, 0x9b, 0x3c, 0xfa, 0xfc, 0x87, 0xec, 0x5f,
- 0x24, 0x38, 0xfe, 0x53, 0xfd, 0x80, 0x0a, 0xbe, 0xb7, 0x8f, 0xfe, 0x1f, 0x60, 0x75, 0xe0, 0xbb,
- 0x6c, 0x03, 0xc7, 0x7c, 0x97, 0xed, 0xfa, 0xcf, 0x71, 0x9f, 0xe4, 0x7e, 0x96, 0x83, 0xa7, 0x03,
- 0x78, 0x1e, 0x40, 0xe5, 0x5b, 0x1d, 0xd9, 0xee, 0x7f, 0x07, 0x4d, 0x9f, 0xff, 0x30, 0xe0, 0xf1,
- 0xb4, 0x8f, 0xd0, 0xcd, 0x00, 0xe6, 0x47, 0x86, 0xe6, 0xdf, 0x87, 0x44, 0x51, 0xd3, 0x54, 0x0d,
- 0x5d, 0xb1, 0xd5, 0x1b, 0xd5, 0x22, 0xc8, 0x24, 0x84, 0xd6, 0xaa, 0x92, 0xdb, 0x6e, 0x6d, 0xdd,
- 0x52, 0x79, 0xe8, 0x3a, 0x0d, 0x3d, 0x21, 0xe4, 0x35, 0xfd, 0xf6, 0x8e, 0xcf, 0x01, 0xdb, 0xb5,
- 0xf9, 0x2f, 0x0d, 0x00, 0xdc, 0x56, 0xb7, 0x2b, 0x9a, 0xb2, 0xbb, 0x2b, 0x6b, 0x47, 0x7d, 0xee,
- 0xa4, 0xbb, 0xa0, 0xdd, 0x86, 0x94, 0x29, 0xf2, 0xf7, 0xd5, 0x6d, 0x26, 0x68, 0x51, 0x9f, 0x97,
- 0xc1, 0x3e, 0x99, 0x62, 0xe5, 0xa1, 0x22, 0x24, 0x0d, 0xda, 0x5f, 0xd3, 0x52, 0x87, 0xf9, 0xd1,
- 0xf6, 0xc8, 0xe6, 0xd8, 0xaf, 0x60, 0x81, 0xa2, 0x6b, 0x30, 0x20, 0x63, 0x6a, 0x9b, 0x21, 0x5c,
- 0x61, 0x3e, 0x34, 0x61, 0x09, 0x15, 0x5b, 0x06, 0xe0, 0x9d, 0x36, 0x83, 0xc7, 0x9e, 0x36, 0xc9,
- 0xde, 0xa7, 0x4d, 0x1e, 0xd2, 0x75, 0x49, 0x37, 0x44, 0xad, 0xdd, 0xa4, 0x38, 0x86, 0xa2, 0xe1,
- 0x48, 0x61, 0x28, 0xa1, 0xdd, 0xac, 0xd0, 0x30, 0x98, 0x01, 0xfa, 0x1d, 0x94, 0x19, 0x20, 0x46,
- 0xfa, 0x72, 0x77, 0x42, 0x52, 0xe9, 0x63, 0x0b, 0x7e, 0x0a, 0x9c, 0x2d, 0xc3, 0xa0, 0x29, 0x41,
- 0xaf, 0x41, 0x52, 0x67, 0xf6, 0xb1, 0x8b, 0x7b, 0x68, 0x9a, 0xd1, 0x52, 0x9f, 0x60, 0x81, 0x2c,
- 0x0e, 0xc1, 0x20, 0x63, 0x10, 0x5f, 0x82, 0x01, 0xda, 0x16, 0x9a, 0x02, 0x54, 0xae, 0xe4, 0x2a,
- 0x9b, 0x65, 0xbf, 0x8d, 0x2e, 0x15, 0x73, 0x2b, 0x95, 0xd2, 0xbd, 0x0c, 0x87, 0x00, 0x06, 0x36,
- 0x72, 0x9b, 0xe5, 0x62, 0x81, 0xbe, 0x0e, 0x9f, 0xcf, 0xad, 0xe5, 0x8b, 0x2b, 0x2b, 0xc5, 0x42,
- 0x26, 0x7e, 0x7d, 0xe3, 0x93, 0xdc, 0x2a, 0x9c, 0x0d, 0xd0, 0x04, 0x0e, 0xc9, 0xbf, 0x12, 0x30,
- 0x73, 0xef, 0x5b, 0xc5, 0xfa, 0xfc, 0x87, 0xf7, 0xd5, 0x6d, 0x91, 0x75, 0xed, 0xa3, 0xc5, 0x04,
- 0xc4, 0xef, 0xab, 0xdb, 0xfc, 0x0f, 0x0f, 0xc2, 0x00, 0x7d, 0xc6, 0x05, 0xdd, 0x81, 0xb4, 0x2e,
- 0x3d, 0x70, 0xbc, 0x7e, 0xca, 0x75, 0xdc, 0xbf, 0xa4, 0x50, 0x73, 0x65, 0xe9, 0x81, 0xf5, 0x30,
- 0x6a, 0xa9, 0x4f, 0x18, 0xd6, 0x1d, 0x69, 0x54, 0x82, 0xc1, 0x56, 0x7b, 0x5b, 0xd4, 0xdb, 0xdb,
- 0x5d, 0x9e, 0x9e, 0x63, 0xc8, 0x36, 0xda, 0xdb, 0x75, 0x45, 0xdf, 0xab, 0xa8, 0x1b, 0xed, 0xed,
- 0x72, 0x7b, 0xbb, 0xd4, 0x27, 0x0c, 0xb4, 0xc8, 0x3f, 0xb4, 0x0f, 0xd3, 0x2d, 0x5a, 0xc8, 0x16,
- 0x0c, 0x87, 0xa2, 0xa1, 0x8a, 0x55, 0xbd, 0x5a, 0xed, 0xb2, 0x48, 0x76, 0x63, 0x66, 0xce, 0x59,
- 0x45, 0xcd, 0xeb, 0xd5, 0x6a, 0xa9, 0x4f, 0x98, 0x68, 0x05, 0xe4, 0xa3, 0x9f, 0xe4, 0xe0, 0xa2,
- 0xd9, 0x9a, 0xfd, 0x6c, 0xbb, 0x2a, 0x92, 0xf7, 0xec, 0x44, 0xf2, 0xb2, 0x7d, 0x55, 0x32, 0xa4,
- 0xba, 0x6a, 0x06, 0x97, 0xbc, 0x11, 0xa9, 0x71, 0x93, 0x2c, 0x15, 0x35, 0x8f, 0x11, 0x15, 0x24,
- 0x43, 0xca, 0x53, 0x34, 0xa5, 0x3e, 0xe1, 0x7c, 0xab, 0x5b, 0x25, 0xd4, 0x80, 0x69, 0xcc, 0xc2,
- 0xa6, 0x6a, 0x28, 0x3b, 0x0a, 0x7b, 0xd4, 0x48, 0x6e, 0x10, 0x1d, 0x4b, 0x67, 0xdf, 0x0b, 0x9d,
- 0xbb, 0x71, 0x5b, 0xdd, 0x5e, 0x73, 0xc0, 0x16, 0x09, 0x68, 0xa9, 0x4f, 0x98, 0xbc, 0x1f, 0x54,
- 0x80, 0xee, 0xc3, 0x94, 0x49, 0x04, 0x43, 0x15, 0x75, 0x43, 0xaa, 0xee, 0xd7, 0x34, 0xe5, 0x81,
- 0xac, 0xb1, 0x79, 0xba, 0x10, 0x91, 0x97, 0x65, 0x1b, 0xd2, 0x41, 0x71, 0x57, 0x7e, 0x56, 0x84,
- 0x61, 0xa7, 0x20, 0xa1, 0x75, 0xeb, 0xf5, 0x39, 0x57, 0x24, 0xd5, 0x6c, 0xf4, 0xd7, 0xe7, 0xcc,
- 0x07, 0xe7, 0xd8, 0x73, 0x1b, 0x97, 0x60, 0xd4, 0x23, 0x5c, 0xd8, 0xe5, 0x37, 0xd4, 0x16, 0xbb,
- 0x14, 0x3d, 0x24, 0xd0, 0x44, 0x76, 0x0a, 0x26, 0x82, 0x64, 0x25, 0x7b, 0x01, 0xce, 0x77, 0x65,
- 0x63, 0x76, 0x1a, 0x26, 0x03, 0x89, 0xec, 0xc0, 0xea, 0x1a, 0x37, 0x76, 0x92, 0xe9, 0xe3, 0x49,
- 0xfc, 0xff, 0xe2, 0xe0, 0x4c, 0x9e, 0x68, 0x57, 0xef, 0x7b, 0x67, 0xec, 0x1d, 0xac, 0x45, 0xcf,
- 0x13, 0x8b, 0xb3, 0xe4, 0x51, 0xcf, 0xa7, 0x50, 0x04, 0x9f, 0xd0, 0x7a, 0x5c, 0xf1, 0x2e, 0x64,
- 0x7c, 0x8f, 0xaf, 0xc5, 0x7a, 0x79, 0x7c, 0x8d, 0x6d, 0x27, 0x7b, 0xbc, 0x41, 0x74, 0x0e, 0x52,
- 0xd6, 0x3b, 0x89, 0xf6, 0x33, 0x5b, 0x66, 0xd6, 0x72, 0xcd, 0xfb, 0x0e, 0x57, 0xbf, 0xef, 0x1d,
- 0xae, 0xff, 0xc2, 0xc1, 0x99, 0x4d, 0x62, 0x1a, 0x42, 0x86, 0xff, 0xba, 0xcb, 0x8b, 0x64, 0x83,
- 0x8f, 0xe2, 0x10, 0x33, 0x1f, 0xe0, 0xce, 0x71, 0x87, 0xee, 0x1f, 0xf5, 0x0d, 0xcb, 0x02, 0x92,
- 0xa3, 0xf5, 0x78, 0x88, 0xf5, 0x22, 0x8b, 0xed, 0x55, 0x49, 0xdf, 0x37, 0x8d, 0x1f, 0xfe, 0xcf,
- 0xff, 0x00, 0x9c, 0x5a, 0x92, 0x8d, 0xc7, 0x33, 0x58, 0xfe, 0xb7, 0x39, 0x38, 0x4d, 0x9f, 0x35,
- 0x73, 0x7b, 0xed, 0x27, 0x29, 0x4b, 0x67, 0x01, 0x5a, 0xd2, 0xae, 0x2c, 0x1a, 0xea, 0x3e, 0x7b,
- 0xd5, 0x79, 0x48, 0x18, 0xc2, 0x39, 0x15, 0x9c, 0x81, 0x4e, 0x03, 0x49, 0xd8, 0x07, 0xe6, 0x09,
- 0x21, 0x89, 0x33, 0x48, 0x0c, 0xfa, 0x29, 0x48, 0x92, 0x48, 0x03, 0x71, 0xfb, 0x90, 0xc9, 0xc2,
- 0x20, 0x49, 0x2f, 0x1e, 0x76, 0x7f, 0x46, 0xf3, 0x73, 0x1c, 0x9c, 0x09, 0x1e, 0x1b, 0x7b, 0xb9,
- 0xad, 0x0c, 0x63, 0x5e, 0x4e, 0x9b, 0xbb, 0x83, 0x51, 0x59, 0x9d, 0xf1, 0x2e, 0x77, 0xd0, 0x45,
- 0x18, 0x6d, 0xca, 0x07, 0x86, 0xe8, 0x1b, 0x72, 0x1a, 0x67, 0x6f, 0x98, 0xc3, 0xe6, 0xdf, 0x83,
- 0x33, 0x05, 0xb9, 0x2e, 0x3f, 0x2e, 0x31, 0xe6, 0xff, 0x2b, 0x07, 0xd3, 0x54, 0x4d, 0xd8, 0x96,
- 0xff, 0xb1, 0x3c, 0xfb, 0xbb, 0x04, 0x29, 0x87, 0xbf, 0xc0, 0xa6, 0xca, 0xf9, 0xae, 0xce, 0x15,
- 0x3b, 0x22, 0xb4, 0xfd, 0x0e, 0x2c, 0x27, 0x0c, 0x89, 0xad, 0x1a, 0x86, 0x58, 0x4e, 0x14, 0xcd,
- 0x70, 0x17, 0x4e, 0x61, 0x8b, 0xf2, 0x20, 0x70, 0xc8, 0xd7, 0x5c, 0xe4, 0x7c, 0x9a, 0x0c, 0xf8,
- 0x5c, 0x17, 0x47, 0x89, 0x51, 0xf2, 0xdf, 0x73, 0x30, 0x4d, 0x35, 0xce, 0x49, 0xa2, 0x45, 0x8b,
- 0x47, 0xa3, 0x9b, 0x8b, 0x64, 0xc7, 0x52, 0x2c, 0x77, 0x60, 0x62, 0x49, 0x36, 0x4e, 0x94, 0x54,
- 0xbf, 0x10, 0x83, 0x71, 0x2a, 0x74, 0x85, 0x7a, 0xeb, 0xb6, 0xba, 0xfd, 0x58, 0x04, 0xce, 0xb3,
- 0xbe, 0x8a, 0x1d, 0x67, 0x7d, 0xb5, 0x0c, 0x49, 0x4d, 0xd1, 0xf7, 0x09, 0xa2, 0x78, 0xe7, 0x80,
- 0xf0, 0xa0, 0x77, 0x19, 0x4b, 0x7d, 0xc2, 0x20, 0x86, 0xc7, 0xa8, 0x26, 0x61, 0x00, 0xf3, 0xd3,
- 0x12, 0xcd, 0xc4, 0x7d, 0x75, 0xdb, 0x2f, 0xb6, 0x3e, 0x35, 0x65, 0xfa, 0xd7, 0xff, 0x83, 0x83,
- 0x29, 0xac, 0xad, 0x6c, 0x9a, 0xea, 0x8f, 0x85, 0x7a, 0x8f, 0x49, 0x1b, 0xdb, 0xef, 0x6a, 0x26,
- 0x3a, 0xbd, 0xab, 0xe9, 0x7f, 0xcb, 0xfa, 0x47, 0x38, 0x98, 0xf6, 0x8d, 0x9b, 0x29, 0xe8, 0x02,
- 0x0c, 0x3b, 0xa6, 0x88, 0xa9, 0x9b, 0x23, 0xcc, 0x91, 0x94, 0x63, 0x39, 0x13, 0x59, 0x23, 0x57,
- 0x60, 0x9a, 0x6a, 0xe4, 0x13, 0x9d, 0x12, 0x7f, 0x3d, 0x06, 0x19, 0xaf, 0x10, 0xa2, 0xb7, 0x60,
- 0x84, 0x7d, 0x2d, 0xd4, 0xed, 0xb6, 0x3e, 0x15, 0xfa, 0xe8, 0x8f, 0xd3, 0x61, 0x4d, 0xeb, 0xae,
- 0xe7, 0x9b, 0x4f, 0xf4, 0x21, 0xec, 0xd0, 0x07, 0xad, 0xe3, 0xe1, 0x0f, 0x5a, 0x3b, 0x9e, 0x01,
- 0xed, 0xef, 0xe9, 0x19, 0xd0, 0xbf, 0x3c, 0x00, 0x03, 0x54, 0x51, 0x04, 0xee, 0xc6, 0xbc, 0xc4,
- 0x3e, 0xd3, 0xd6, 0xf9, 0x73, 0x87, 0x14, 0x81, 0xe3, 0xbb, 0x6c, 0x37, 0xc9, 0xd7, 0x5c, 0x0c,
- 0x99, 0x1d, 0x3c, 0x5e, 0xec, 0x08, 0x87, 0xa5, 0x06, 0x2f, 0xbd, 0x65, 0x81, 0x02, 0xa1, 0x77,
- 0x60, 0x98, 0x68, 0x04, 0x73, 0x53, 0xaa, 0xbf, 0xf3, 0x82, 0xa9, 0xc3, 0x9d, 0xb7, 0x52, 0x9f,
- 0x90, 0xd2, 0x1c, 0xcf, 0x2d, 0x6d, 0x81, 0xe9, 0x18, 0x5a, 0xc8, 0x3b, 0xdf, 0x38, 0x08, 0x7b,
- 0x47, 0xb9, 0xd4, 0x27, 0x98, 0x1c, 0x37, 0x71, 0x1f, 0xeb, 0x3b, 0x59, 0xd7, 0x00, 0xc8, 0x17,
- 0x6f, 0x22, 0xee, 0xf0, 0x08, 0x43, 0xa4, 0x36, 0x01, 0x7d, 0x09, 0x92, 0x72, 0xb3, 0x16, 0x71,
- 0x63, 0x47, 0x18, 0x94, 0x9b, 0x35, 0x02, 0x76, 0x19, 0x32, 0x8e, 0x89, 0x4d, 0x05, 0x0c, 0x08,
- 0xe7, 0x47, 0xec, 0x99, 0x4b, 0x64, 0xeb, 0x45, 0x6b, 0xe7, 0x2a, 0xd5, 0x7d, 0xe7, 0xca, 0xdc,
- 0xb4, 0xe2, 0xab, 0x90, 0x34, 0xf9, 0x8a, 0x4e, 0xc1, 0xe4, 0xed, 0xf5, 0x45, 0xb1, 0x5c, 0xc9,
- 0x55, 0x02, 0x0e, 0x3e, 0x36, 0x8a, 0x6b, 0x85, 0xe5, 0xb5, 0xa5, 0x0c, 0x87, 0x13, 0xc2, 0xe6,
- 0xda, 0x1a, 0x4e, 0xc4, 0x50, 0x12, 0xfa, 0x0b, 0xeb, 0x6b, 0xc5, 0x4c, 0x1c, 0x0d, 0x43, 0x92,
- 0xee, 0xaf, 0x14, 0x0b, 0x99, 0x7e, 0x04, 0x30, 0x70, 0x2b, 0xb7, 0x8c, 0xff, 0x27, 0xae, 0x17,
- 0x3e, 0xc9, 0xe5, 0xe0, 0x54, 0xd0, 0xa6, 0x2b, 0x15, 0xe9, 0xa7, 0x82, 0x36, 0x48, 0x49, 0x91,
- 0x3e, 0xff, 0x61, 0xad, 0xde, 0xc2, 0x46, 0xe7, 0xa3, 0xc5, 0x21, 0x6b, 0xff, 0x93, 0x5f, 0x86,
- 0xcc, 0x92, 0x6c, 0xb8, 0x2d, 0xe7, 0x4b, 0x2e, 0xcd, 0x73, 0x9e, 0x68, 0x9e, 0xd3, 0x1d, 0x5a,
- 0x65, 0x5a, 0xe7, 0xef, 0xc6, 0x00, 0x61, 0xad, 0x4a, 0x33, 0x03, 0x2c, 0x49, 0xff, 0xf1, 0x2d,
- 0x89, 0xad, 0xf2, 0x39, 0x97, 0xca, 0x77, 0x99, 0x90, 0x98, 0xc7, 0x84, 0xb8, 0xcd, 0x4f, 0xdc,
- 0x6b, 0x7e, 0xcc, 0x29, 0x9f, 0xe8, 0x6d, 0xca, 0x3b, 0x0d, 0xd3, 0x40, 0xc7, 0x65, 0x82, 0xdf,
- 0x00, 0xb5, 0x60, 0xdc, 0x45, 0x29, 0x66, 0x7b, 0x9e, 0x87, 0xfe, 0xfb, 0xea, 0xb6, 0x69, 0x73,
- 0xce, 0x76, 0xec, 0x89, 0x40, 0xaa, 0x46, 0x36, 0x34, 0x2b, 0x30, 0x9e, 0x97, 0x9a, 0x55, 0xb9,
- 0x7e, 0x22, 0xac, 0x5e, 0x81, 0x71, 0x6a, 0xb6, 0x4e, 0x04, 0xdb, 0x5f, 0x8a, 0xc1, 0x39, 0xe6,
- 0xc1, 0xf9, 0xf6, 0xf2, 0x4d, 0xd4, 0x45, 0x8f, 0x3f, 0x72, 0x95, 0x20, 0xbf, 0x84, 0xa2, 0x1d,
- 0x40, 0x58, 0xf2, 0x23, 0xc2, 0x78, 0xc0, 0xd1, 0x40, 0x97, 0xc8, 0x4a, 0x3f, 0x3e, 0xba, 0x90,
- 0x40, 0xfe, 0xa3, 0x87, 0x13, 0xd8, 0x6c, 0xf8, 0xdf, 0x1c, 0x9c, 0xa3, 0xae, 0x7f, 0x38, 0x35,
- 0x72, 0x2e, 0x42, 0x33, 0x5a, 0x44, 0x3c, 0x8c, 0x61, 0x86, 0x6e, 0xeb, 0x64, 0x28, 0x11, 0x48,
- 0x84, 0x63, 0x2d, 0x11, 0x24, 0x38, 0x83, 0x35, 0xd2, 0x63, 0x1c, 0x3b, 0xff, 0x1f, 0x39, 0x78,
- 0x82, 0xcc, 0x3f, 0xff, 0xd1, 0xd1, 0x09, 0xcb, 0xdb, 0xf7, 0x6b, 0x1f, 0xe2, 0xef, 0x70, 0x70,
- 0x2e, 0x74, 0x84, 0x4c, 0xdb, 0xbc, 0x0b, 0x13, 0x01, 0x12, 0x60, 0x6a, 0x9f, 0x1e, 0x44, 0x60,
- 0x3c, 0xe0, 0x08, 0x2e, 0xb2, 0x62, 0xaa, 0xc1, 0x39, 0xa6, 0x4a, 0x1e, 0x27, 0xc7, 0xff, 0x56,
- 0x0c, 0x4e, 0xaf, 0x48, 0xda, 0xae, 0x4c, 0x3f, 0xde, 0x6c, 0x7f, 0x9c, 0x9d, 0xb9, 0xa0, 0x25,
- 0x48, 0xb1, 0x2d, 0xdd, 0x96, 0x64, 0xec, 0x31, 0xcf, 0x38, 0xf4, 0x3a, 0x20, 0x36, 0x5c, 0xcc,
- 0x3d, 0xde, 0x90, 0x8c, 0x3d, 0x01, 0x28, 0x2c, 0xfe, 0x8f, 0x24, 0x98, 0xa2, 0x3b, 0xf1, 0xa6,
- 0xb3, 0x4d, 0xbe, 0x8c, 0xa8, 0xcb, 0x66, 0xfc, 0xff, 0x6c, 0x04, 0xa4, 0xb7, 0x14, 0xf2, 0xd5,
- 0x66, 0x72, 0x91, 0xd5, 0x9f, 0x8d, 0xd6, 0x60, 0x74, 0x5b, 0xd9, 0x15, 0xdf, 0x6f, 0xcb, 0xda,
- 0xa1, 0x48, 0xe3, 0x7d, 0xa2, 0x3d, 0xe1, 0x4a, 0x26, 0x5c, 0xa9, 0x4f, 0x48, 0x6f, 0x3b, 0x33,
- 0x1c, 0xa1, 0xdc, 0xb7, 0x21, 0x1b, 0x48, 0x25, 0xfa, 0xad, 0x91, 0x2b, 0x80, 0xa4, 0x56, 0x4b,
- 0x53, 0x0f, 0xc4, 0x66, 0xbb, 0x21, 0xb6, 0xf6, 0x34, 0x49, 0xb7, 0x3e, 0x39, 0x91, 0xa1, 0x25,
- 0x6b, 0xed, 0xc6, 0x06, 0xcd, 0xe7, 0xbf, 0xca, 0xc1, 0x04, 0xee, 0xb8, 0x5c, 0xf3, 0x5c, 0xea,
- 0xf4, 0x1e, 0x78, 0x72, 0x5d, 0x0f, 0x3c, 0x63, 0xfe, 0x03, 0xcf, 0x3a, 0x4c, 0xd7, 0x71, 0x4f,
- 0x45, 0x76, 0x5d, 0xc1, 0xf1, 0x99, 0xfe, 0xce, 0x47, 0x2e, 0x1d, 0xa4, 0xa0, 0xd4, 0x27, 0x4c,
- 0xd6, 0x83, 0x8a, 0xad, 0x40, 0xb3, 0xbf, 0xc8, 0xc1, 0xb8, 0x7b, 0x4c, 0x94, 0x32, 0xfb, 0xe1,
- 0xbd, 0xe1, 0x3a, 0x06, 0xca, 0x85, 0x53, 0xbb, 0x7b, 0x67, 0xbe, 0x16, 0x83, 0x49, 0x77, 0x67,
- 0xd8, 0xf7, 0x3a, 0x51, 0x1e, 0x06, 0x5c, 0x4b, 0xbc, 0x67, 0x3b, 0x2c, 0xf1, 0xbc, 0xec, 0x11,
- 0x18, 0xa8, 0xd7, 0xbd, 0x8f, 0xf5, 0xe4, 0xde, 0xbf, 0xe9, 0x5e, 0x0f, 0xcd, 0x46, 0xea, 0x80,
- 0x6b, 0x4d, 0x64, 0x3b, 0xe1, 0xfd, 0xd1, 0x9d, 0x70, 0xb3, 0x5d, 0x73, 0x95, 0x13, 0xbd, 0x5d,
- 0x9d, 0xb6, 0xab, 0xf3, 0xdf, 0x89, 0xc1, 0x88, 0xbb, 0x38, 0x70, 0x9d, 0xb8, 0x09, 0xa3, 0x34,
- 0xb4, 0xc8, 0xb0, 0xbe, 0x9e, 0xda, 0xf9, 0x72, 0x7f, 0x20, 0xa7, 0x84, 0x11, 0x86, 0xc4, 0xe4,
- 0xdc, 0xdb, 0x90, 0x69, 0xc9, 0xf4, 0xdb, 0x9e, 0x0c, 0x6d, 0xb7, 0xc8, 0xc3, 0x60, 0xbc, 0xa3,
- 0x0c, 0x0b, 0x4b, 0xeb, 0xd7, 0xff, 0x06, 0xf7, 0x49, 0xee, 0x73, 0x1c, 0x9c, 0x0f, 0x50, 0x9a,
- 0x9e, 0xd1, 0xbe, 0xd1, 0x31, 0x56, 0x43, 0x77, 0x55, 0xd6, 0xe7, 0x3f, 0xa4, 0x19, 0xf6, 0x45,
- 0x9f, 0x8f, 0xd0, 0x4b, 0x01, 0x6b, 0x90, 0xee, 0x60, 0xfc, 0xf7, 0x38, 0x38, 0x4d, 0xbd, 0x40,
- 0x77, 0x87, 0x6c, 0x2b, 0xe0, 0xb6, 0xc8, 0xcf, 0x10, 0x3b, 0x70, 0x01, 0x75, 0x1f, 0x92, 0x65,
- 0x8d, 0x4b, 0xd6, 0xbc, 0x88, 0xf5, 0x3c, 0x2f, 0xd8, 0x89, 0x7c, 0xd5, 0xbc, 0x19, 0x32, 0xee,
- 0x1d, 0x81, 0xed, 0xee, 0x65, 0xdc, 0xa3, 0x8d, 0xe2, 0xf4, 0xfd, 0x1e, 0x07, 0xa7, 0xa9, 0xd3,
- 0x17, 0x3c, 0xf8, 0xd7, 0x5c, 0x26, 0x90, 0x0d, 0x3d, 0x02, 0x37, 0x99, 0xb4, 0xe6, 0x8f, 0x31,
- 0x70, 0xa7, 0x42, 0x38, 0xba, 0x57, 0x77, 0x0f, 0x66, 0x96, 0x64, 0xe3, 0x71, 0x0c, 0x8e, 0xff,
- 0x4d, 0x0e, 0xb2, 0xd8, 0xd7, 0x71, 0x17, 0xea, 0x27, 0x28, 0x37, 0xdf, 0x2f, 0x2f, 0xee, 0xaf,
- 0xb1, 0x93, 0x32, 0xdf, 0xc8, 0x98, 0x07, 0x77, 0x07, 0xc6, 0xbc, 0x52, 0x68, 0xba, 0x6f, 0x4f,
- 0x47, 0xe2, 0xb0, 0x30, 0xea, 0x99, 0x98, 0x91, 0xdd, 0xb6, 0x77, 0xe1, 0x34, 0x75, 0xdb, 0x1e,
- 0x07, 0x4b, 0x67, 0xbf, 0xc4, 0x01, 0xf2, 0x07, 0xe9, 0xa3, 0x0b, 0x70, 0x4e, 0x28, 0xae, 0x90,
- 0xd0, 0xd2, 0xf0, 0xe8, 0xf0, 0x61, 0x48, 0x16, 0xef, 0x6c, 0xe6, 0x56, 0xc4, 0xca, 0x7a, 0x86,
- 0x43, 0x19, 0x18, 0x5e, 0x5b, 0xaf, 0x88, 0x56, 0x0e, 0x79, 0x23, 0x60, 0x49, 0x28, 0xe6, 0x2a,
- 0x45, 0x41, 0xac, 0x94, 0x72, 0x6b, 0x99, 0x38, 0x4a, 0xc3, 0xd0, 0x4a, 0xb1, 0x5c, 0xa6, 0xc9,
- 0x7e, 0x94, 0x85, 0x29, 0x67, 0x05, 0x71, 0x5d, 0xa0, 0xe0, 0xe5, 0x4c, 0x02, 0x4d, 0xc3, 0xb8,
- 0x55, 0xd5, 0x51, 0x30, 0x80, 0x00, 0x06, 0x8a, 0xef, 0x2c, 0x97, 0x2b, 0xe5, 0xcc, 0xe0, 0xec,
- 0xc7, 0x1c, 0x0c, 0xaf, 0x4a, 0x46, 0x75, 0x4f, 0x69, 0xee, 0x12, 0x95, 0x7a, 0x16, 0x4e, 0xad,
- 0xe6, 0x2a, 0xf9, 0xd2, 0xf2, 0xda, 0x92, 0x58, 0xb9, 0xb7, 0xe1, 0xdd, 0x12, 0x3a, 0x03, 0x33,
- 0xee, 0xe2, 0x5b, 0x9b, 0x2b, 0x2b, 0x22, 0xc9, 0xca, 0x70, 0xe8, 0x1c, 0x9c, 0x76, 0x97, 0x6e,
- 0xe4, 0x84, 0xca, 0x72, 0xce, 0xac, 0x10, 0xf3, 0x57, 0x58, 0x5e, 0xbb, 0x5b, 0x14, 0xca, 0x45,
- 0x56, 0x21, 0x3e, 0xbb, 0x0a, 0x69, 0xf6, 0x51, 0x3f, 0xfa, 0xc1, 0x33, 0x3c, 0x8a, 0xfc, 0xfa,
- 0x5a, 0xa5, 0xb8, 0xe6, 0xbd, 0x22, 0x99, 0x81, 0x61, 0xb3, 0xa0, 0x52, 0x7c, 0xa7, 0x92, 0xe1,
- 0xd0, 0x18, 0xa4, 0xcd, 0x9c, 0xe5, 0xd5, 0xdc, 0x52, 0x31, 0x13, 0x9b, 0xdd, 0xb0, 0x3f, 0xe5,
- 0xe5, 0xf8, 0xa2, 0x16, 0x3a, 0x05, 0x93, 0xc5, 0xb5, 0xcd, 0xd5, 0xa0, 0x01, 0xa6, 0x60, 0x70,
- 0x99, 0x64, 0x30, 0x8c, 0xc2, 0x72, 0xf9, 0x2d, 0x31, 0xb7, 0x96, 0x5b, 0xb9, 0x57, 0x5e, 0x2e,
- 0x67, 0x62, 0xb3, 0x02, 0x80, 0xbd, 0xbd, 0x82, 0xc9, 0x51, 0x58, 0xd9, 0x10, 0x6f, 0xaf, 0x2f,
- 0x06, 0xe1, 0x1a, 0x85, 0x14, 0xc3, 0x85, 0x6b, 0x64, 0x38, 0x34, 0x09, 0x63, 0x2e, 0x7c, 0x24,
- 0x3b, 0x36, 0xdb, 0x0c, 0xf2, 0xd4, 0xc8, 0x4d, 0x7a, 0xf2, 0x0d, 0xbe, 0x82, 0xb8, 0xbc, 0x76,
- 0x6b, 0x9d, 0x36, 0xd0, 0x75, 0x9b, 0x6e, 0x08, 0x12, 0x42, 0x31, 0x57, 0xb8, 0x97, 0x89, 0x39,
- 0x36, 0xe3, 0xe2, 0x74, 0x58, 0x77, 0x73, 0x2b, 0xcb, 0x85, 0x4c, 0xff, 0xc2, 0xef, 0x94, 0xc8,
- 0x20, 0xca, 0xb2, 0xf6, 0x40, 0xa9, 0xca, 0xe8, 0x9b, 0x1c, 0x8c, 0xb8, 0x3f, 0xa8, 0x88, 0xae,
- 0x74, 0xdd, 0x1b, 0x77, 0x7c, 0xb4, 0x32, 0x7b, 0x35, 0x62, 0x6d, 0xaa, 0x0a, 0xf8, 0x83, 0x3f,
- 0xff, 0xb5, 0xaf, 0xff, 0x44, 0x4c, 0xe3, 0x2f, 0xcd, 0x3f, 0x58, 0x98, 0xff, 0x90, 0xea, 0xad,
- 0xd7, 0x2c, 0x43, 0x3c, 0xfb, 0xd1, 0x3c, 0xfb, 0x04, 0xff, 0x75, 0xb6, 0x89, 0x7b, 0x9d, 0x9b,
- 0xdd, 0x2a, 0xf0, 0x6f, 0x84, 0xd5, 0xb6, 0xbe, 0xf4, 0x3f, 0xff, 0xa1, 0x43, 0x45, 0x05, 0x61,
- 0x41, 0xbf, 0xc5, 0x41, 0xca, 0xf1, 0x45, 0x64, 0xf4, 0x4c, 0xe4, 0x2f, 0x60, 0x67, 0x67, 0xa3,
- 0x54, 0x65, 0x03, 0xd4, 0xc8, 0x00, 0xeb, 0xfc, 0x53, 0x61, 0x5d, 0x26, 0x5f, 0x5d, 0xbe, 0x4e,
- 0xdf, 0x14, 0xc2, 0xa3, 0xcb, 0xf1, 0x37, 0x7b, 0x1d, 0x9d, 0x07, 0x05, 0xfa, 0x0e, 0x07, 0x63,
- 0xbe, 0x0f, 0xed, 0xa2, 0xf9, 0x28, 0x51, 0xb3, 0x4e, 0x56, 0x3e, 0x17, 0x1d, 0x80, 0x0d, 0xf6,
- 0xcf, 0x92, 0xc1, 0x1e, 0xf0, 0xb3, 0xdd, 0xb8, 0x69, 0xaf, 0xbc, 0xf1, 0x90, 0x97, 0xf8, 0xc5,
- 0xa3, 0x32, 0xd4, 0x85, 0x88, 0x0c, 0x5c, 0x88, 0x3c, 0x70, 0xa1, 0xd7, 0x81, 0x0b, 0xc7, 0x1f,
- 0xb8, 0x76, 0x52, 0x03, 0x77, 0x21, 0x42, 0xbf, 0xc0, 0x41, 0xda, 0xf5, 0xc9, 0x3d, 0x14, 0xe6,
- 0x2a, 0x05, 0x7d, 0x0e, 0x30, 0x7b, 0x25, 0x5a, 0x65, 0x36, 0xd8, 0x95, 0x47, 0x39, 0xa7, 0x03,
- 0x40, 0x86, 0xfe, 0x2a, 0x4a, 0xe3, 0x91, 0x58, 0x37, 0x56, 0xb7, 0x2e, 0xa1, 0xa7, 0x71, 0x46,
- 0xa8, 0xc8, 0x5a, 0x1d, 0xfd, 0xf9, 0x38, 0x4c, 0x06, 0xc6, 0x68, 0xa1, 0x17, 0x42, 0xaf, 0x06,
- 0x87, 0x47, 0x74, 0x65, 0x23, 0x46, 0xa3, 0xf0, 0x5f, 0x8a, 0x3d, 0xca, 0x4d, 0x53, 0xba, 0x5f,
- 0xf1, 0x9e, 0xe2, 0x3d, 0xca, 0x5d, 0x08, 0x29, 0xb9, 0xe2, 0x1d, 0xf7, 0xb7, 0x39, 0xfe, 0xaa,
- 0x93, 0x85, 0xee, 0x45, 0xc8, 0xac, 0x3f, 0xc6, 0x1f, 0xb3, 0xfd, 0x36, 0x5f, 0xec, 0x08, 0x13,
- 0x4e, 0x34, 0x3f, 0xae, 0xab, 0xfc, 0xe5, 0x50, 0xcd, 0x12, 0x50, 0xbd, 0xc8, 0xbf, 0xd9, 0xb3,
- 0x76, 0xf1, 0xa3, 0x41, 0xff, 0x27, 0x06, 0x93, 0x81, 0x91, 0x65, 0xa1, 0x4c, 0xeb, 0x14, 0x87,
- 0x16, 0x99, 0x69, 0x3f, 0x12, 0x7b, 0x94, 0x3b, 0x8f, 0x3d, 0x2d, 0x3f, 0x63, 0x1c, 0x2e, 0x3e,
- 0x61, 0xcc, 0xef, 0x72, 0x0b, 0x94, 0x31, 0xb8, 0xba, 0x97, 0xc4, 0xfe, 0x9b, 0x17, 0xb3, 0x1f,
- 0x61, 0xea, 0xbc, 0xbe, 0x70, 0x2d, 0x1c, 0xc6, 0xa6, 0x4f, 0x28, 0xfc, 0xd5, 0x85, 0xcb, 0x36,
- 0xbc, 0x4d, 0xdb, 0xb0, 0xea, 0xd7, 0x16, 0x5e, 0x0c, 0xac, 0xde, 0xbd, 0x25, 0xf4, 0x6f, 0x63,
- 0x80, 0xfc, 0xa1, 0x6e, 0x28, 0x4c, 0x73, 0x85, 0x46, 0xc5, 0x45, 0x26, 0xfd, 0xef, 0x71, 0x8f,
- 0x72, 0xc4, 0xc9, 0x25, 0xd4, 0xfd, 0x75, 0x0e, 0xf5, 0x46, 0xdd, 0xad, 0x1b, 0xe8, 0xe8, 0xa4,
- 0xdd, 0x9a, 0x45, 0x91, 0xe9, 0xba, 0xf5, 0x32, 0x3a, 0x12, 0x51, 0xd1, 0xf7, 0x62, 0xe6, 0xb7,
- 0x52, 0x3d, 0x51, 0x6a, 0x0b, 0x1d, 0x95, 0x63, 0x60, 0x2c, 0x60, 0xf6, 0x85, 0x9e, 0x60, 0x98,
- 0x5e, 0xfd, 0x9f, 0xdc, 0xa3, 0x1c, 0x5b, 0xba, 0x11, 0x22, 0xff, 0x91, 0x49, 0xe4, 0xa8, 0xba,
- 0x65, 0x6b, 0x09, 0x9d, 0x8c, 0x62, 0xb1, 0x08, 0x1e, 0x41, 0xab, 0x6c, 0x2d, 0xa2, 0x63, 0xab,
- 0x14, 0xf4, 0x6f, 0x62, 0x30, 0x19, 0x18, 0xe2, 0x17, 0xaa, 0x4f, 0x3a, 0x05, 0x04, 0x66, 0x43,
- 0x3e, 0x30, 0xe6, 0x13, 0xe2, 0xd9, 0x5e, 0x85, 0x78, 0xf6, 0x38, 0x42, 0x3c, 0xdb, 0x83, 0x10,
- 0xcf, 0x1e, 0x4d, 0x88, 0xbf, 0x12, 0x87, 0x99, 0xb0, 0x23, 0x49, 0xf4, 0x72, 0x47, 0x7b, 0x1a,
- 0x7a, 0x8e, 0x91, 0x8d, 0x7e, 0xa4, 0xc2, 0x7f, 0x25, 0xf6, 0x28, 0x97, 0x65, 0xb6, 0x33, 0xe0,
- 0x90, 0xe6, 0x51, 0xee, 0x62, 0x78, 0xa1, 0xcf, 0xb6, 0x7e, 0x2a, 0xc6, 0x3f, 0xd7, 0x51, 0x9c,
- 0x03, 0xce, 0x6f, 0xb0, 0x5a, 0x5d, 0xe5, 0x4b, 0x47, 0x9a, 0x05, 0x21, 0xe8, 0x9e, 0xe3, 0x9f,
- 0x0d, 0x93, 0xef, 0x10, 0x88, 0x12, 0x9f, 0xef, 0x75, 0x46, 0x04, 0x63, 0x42, 0x9f, 0x89, 0xc3,
- 0x4c, 0xd8, 0xa1, 0x6a, 0x28, 0x3f, 0xbb, 0x9c, 0xc2, 0xf6, 0xc2, 0xcf, 0xcf, 0xc4, 0x1e, 0xe5,
- 0x9e, 0x22, 0x06, 0x37, 0x88, 0x61, 0x5e, 0x9b, 0xfb, 0x47, 0xdc, 0xc2, 0x73, 0xe1, 0xf3, 0x23,
- 0xe8, 0xc2, 0x1b, 0xb5, 0x83, 0xb9, 0x85, 0x9b, 0xd1, 0xa6, 0x55, 0x38, 0x8a, 0xe7, 0x16, 0x9e,
- 0x0d, 0x9c, 0x30, 0xe1, 0x10, 0x37, 0x17, 0x5e, 0xe9, 0x3a, 0xc5, 0x42, 0xa1, 0xd1, 0xd7, 0x63,
- 0x30, 0x19, 0x78, 0xdc, 0x1b, 0xaa, 0xb0, 0x3a, 0x1d, 0x0e, 0xf7, 0xc2, 0x92, 0x4f, 0x5c, 0x3a,
- 0xec, 0x77, 0x39, 0xd4, 0x33, 0xc9, 0xb7, 0x5e, 0x47, 0xc7, 0xa2, 0xf7, 0xd6, 0x55, 0xd4, 0x0b,
- 0xb1, 0xb7, 0xae, 0xa1, 0xa3, 0x52, 0x1a, 0xfd, 0x78, 0x9c, 0x46, 0x3c, 0x06, 0x9c, 0x07, 0xa3,
- 0x97, 0x3a, 0xd8, 0xd8, 0xf0, 0x13, 0xf2, 0xec, 0xcb, 0xbd, 0x82, 0x31, 0xeb, 0xfc, 0x43, 0x31,
- 0xb7, 0x75, 0xfe, 0xb6, 0x49, 0xf9, 0x1e, 0xb4, 0xd3, 0xd6, 0x6d, 0x74, 0x62, 0xaa, 0xc9, 0xe2,
- 0x42, 0x34, 0xbd, 0xb4, 0x55, 0x44, 0x27, 0xa1, 0x94, 0xd0, 0x6f, 0xc6, 0x60, 0x26, 0xec, 0xe0,
- 0x3b, 0x54, 0x23, 0x75, 0x39, 0x29, 0x0f, 0xb5, 0xd7, 0x5e, 0x59, 0x9f, 0x3d, 0x82, 0xac, 0xcf,
- 0x1e, 0x53, 0xd6, 0x67, 0x7b, 0x93, 0xf5, 0xd9, 0x23, 0xcb, 0xfa, 0x5f, 0x89, 0x41, 0xc6, 0x7b,
- 0x0b, 0x01, 0xcd, 0x75, 0xb4, 0xd9, 0xbe, 0xe8, 0xdb, 0x6c, 0xf7, 0x80, 0x5f, 0xfe, 0x6f, 0x73,
- 0x8f, 0x72, 0x88, 0x99, 0x61, 0x47, 0x64, 0xe1, 0xa3, 0xdc, 0x13, 0xfe, 0x4c, 0x9f, 0x4d, 0xbe,
- 0xcf, 0x5f, 0x08, 0x93, 0x22, 0x47, 0x1c, 0x31, 0xd6, 0xaf, 0x6f, 0xf2, 0x37, 0x7a, 0x95, 0x37,
- 0x37, 0x06, 0xf4, 0x2d, 0x0e, 0x32, 0xde, 0xcb, 0x04, 0xa1, 0x04, 0x09, 0xb9, 0x75, 0x10, 0x85,
- 0x20, 0x3f, 0xc8, 0x3d, 0xca, 0x9d, 0x21, 0x46, 0xce, 0x39, 0x72, 0xaf, 0x71, 0x7b, 0x6f, 0xe1,
- 0x42, 0x20, 0x67, 0x9d, 0xb7, 0x41, 0xa9, 0x65, 0x79, 0x71, 0x61, 0xbe, 0xab, 0x0c, 0xf8, 0xa0,
- 0xd0, 0x2f, 0x71, 0x90, 0x76, 0xdd, 0x31, 0x08, 0xdd, 0xc2, 0x09, 0xba, 0x89, 0x10, 0x65, 0x9c,
- 0xb2, 0x73, 0x32, 0xbd, 0x83, 0xa2, 0x0c, 0x67, 0xeb, 0x79, 0xd4, 0xeb, 0x58, 0xd0, 0x37, 0x38,
- 0x18, 0xf5, 0x44, 0xa9, 0xa3, 0xab, 0x1d, 0x94, 0xae, 0x3f, 0x8a, 0x3f, 0x3b, 0x17, 0xb5, 0x3a,
- 0xd3, 0xcd, 0xba, 0x5b, 0x35, 0xd7, 0x50, 0x14, 0x21, 0xdd, 0x7a, 0x0d, 0x1d, 0x47, 0x42, 0xd1,
- 0xbf, 0x22, 0x2f, 0xf6, 0xbb, 0x83, 0xe0, 0x43, 0xc5, 0x33, 0x24, 0x5a, 0x3e, 0x54, 0xf3, 0xb9,
- 0x79, 0x35, 0x1b, 0x8d, 0x57, 0xb3, 0x3d, 0xf3, 0xea, 0x3f, 0x70, 0x80, 0xfc, 0x17, 0x81, 0x42,
- 0xb7, 0x11, 0x42, 0xef, 0x0c, 0x65, 0x3b, 0x07, 0x7d, 0xf2, 0x0f, 0xc8, 0x38, 0x5a, 0xfc, 0x95,
- 0x28, 0x53, 0x48, 0x62, 0xad, 0xe0, 0xb9, 0xf4, 0x1a, 0xff, 0x6a, 0xaf, 0x73, 0xc9, 0x01, 0x8e,
- 0xbe, 0x18, 0x83, 0x61, 0xe7, 0x25, 0x1b, 0x34, 0xdb, 0x79, 0x0d, 0xe4, 0x0c, 0x0b, 0xed, 0x36,
- 0xa6, 0x5f, 0x73, 0xe8, 0x51, 0xc7, 0x25, 0x1b, 0x5b, 0x8f, 0x3a, 0x32, 0x9d, 0x7a, 0xf4, 0x51,
- 0x6e, 0x94, 0x55, 0x30, 0xaf, 0xd3, 0x3c, 0xca, 0x9d, 0xf6, 0xe4, 0xf8, 0xf4, 0xee, 0x36, 0x7f,
- 0x2e, 0xd4, 0xd8, 0xd3, 0x68, 0x5c, 0xe2, 0xd3, 0xf2, 0xaf, 0xf4, 0x6c, 0xe3, 0x2d, 0x68, 0xf4,
- 0x55, 0x0e, 0x52, 0x8e, 0xf0, 0xde, 0xd0, 0x13, 0x11, 0x7f, 0xb0, 0x74, 0xe8, 0x89, 0x48, 0x40,
- 0xb4, 0x30, 0xbf, 0xef, 0x9e, 0xac, 0xef, 0xa2, 0x6e, 0x23, 0xb3, 0x1c, 0xc8, 0xde, 0x87, 0x85,
- 0x7e, 0x9e, 0x83, 0x21, 0x2b, 0x50, 0x1c, 0x5d, 0xea, 0xe0, 0x9b, 0xf7, 0xc2, 0xfa, 0xff, 0xcf,
- 0x39, 0x3b, 0x37, 0xd8, 0x00, 0x7c, 0x1e, 0x02, 0x8b, 0x5f, 0xef, 0xe0, 0x30, 0xbb, 0xbc, 0x02,
- 0xab, 0x3a, 0xfa, 0x39, 0x0e, 0x86, 0x9d, 0x71, 0xca, 0xa1, 0x52, 0x1b, 0x10, 0xcc, 0x1c, 0xaa,
- 0x51, 0xdc, 0x7d, 0x9e, 0xed, 0xde, 0xe7, 0xd9, 0x9e, 0xfa, 0xfc, 0x8b, 0x1c, 0x0c, 0x3b, 0x23,
- 0xb5, 0xc3, 0x67, 0x9a, 0x3f, 0x9c, 0x3b, 0xb4, 0xcf, 0xf7, 0xa9, 0x3a, 0xe7, 0x2f, 0x76, 0xe9,
- 0xec, 0xf5, 0x2a, 0x41, 0x8a, 0xa7, 0xc0, 0x2b, 0xfc, 0x42, 0x0f, 0xdd, 0xb6, 0x01, 0xd1, 0x67,
- 0xe3, 0x30, 0x11, 0x14, 0xc7, 0x13, 0xba, 0xff, 0xd7, 0x21, 0xe8, 0x27, 0x1b, 0x2d, 0x8c, 0x81,
- 0xff, 0x42, 0xec, 0x51, 0x2e, 0xcd, 0xa6, 0x3e, 0x8d, 0x56, 0x79, 0x94, 0x3b, 0xe5, 0x4a, 0xfb,
- 0x14, 0xc1, 0x7f, 0xe3, 0x98, 0x12, 0x0d, 0x5b, 0x42, 0x78, 0x22, 0x23, 0x30, 0x4d, 0x96, 0xf9,
- 0xc2, 0x91, 0x56, 0x1d, 0x01, 0xa8, 0xae, 0x84, 0x9f, 0xd4, 0x06, 0xd4, 0x3e, 0xc2, 0x49, 0xad,
- 0x1f, 0x0b, 0xfa, 0xcf, 0x31, 0x98, 0x08, 0x0a, 0x32, 0x0a, 0xe5, 0x4c, 0x87, 0x88, 0xa4, 0xa8,
- 0x9c, 0xf9, 0x2e, 0xf7, 0x28, 0x37, 0x4d, 0x7c, 0x42, 0xc6, 0x07, 0xaf, 0x3b, 0xf8, 0x5b, 0xdc,
- 0xc2, 0x95, 0xf0, 0x85, 0x85, 0x37, 0x6e, 0x8c, 0x3a, 0x86, 0xaf, 0x2d, 0xbc, 0x1a, 0x6d, 0x2d,
- 0x12, 0x0c, 0x7e, 0x65, 0xe1, 0x52, 0xa0, 0x68, 0x07, 0xd7, 0x7e, 0x75, 0xe1, 0x85, 0xae, 0x13,
- 0x21, 0x10, 0x12, 0x7d, 0x39, 0x06, 0x63, 0xbe, 0xa0, 0xa7, 0xd0, 0x53, 0xd4, 0xb0, 0xf0, 0xa8,
- 0xa8, 0x94, 0x7e, 0xe4, 0x5a, 0xe3, 0xfd, 0x2a, 0x87, 0x7a, 0x22, 0xeb, 0xd6, 0x75, 0x74, 0x64,
- 0x9a, 0x6e, 0x3d, 0x83, 0xa2, 0x12, 0x74, 0xeb, 0x25, 0x74, 0x14, 0x6a, 0xa2, 0xff, 0x1e, 0xa3,
- 0x37, 0x66, 0x3c, 0x91, 0x50, 0xe8, 0xf9, 0x0e, 0xf6, 0x32, 0x38, 0x1e, 0x2c, 0xbb, 0xd0, 0x0b,
- 0x08, 0x33, 0xb5, 0xdf, 0xf6, 0x9c, 0x28, 0x7c, 0xdd, 0xa4, 0x6e, 0x44, 0xe5, 0xb1, 0x75, 0x0b,
- 0x9d, 0x88, 0xe6, 0xb0, 0x28, 0xdd, 0x5d, 0x6d, 0x6c, 0xe5, 0xd0, 0x71, 0x75, 0x06, 0xfa, 0x97,
- 0x31, 0x98, 0x08, 0x8a, 0xf2, 0x0a, 0x55, 0x18, 0x1d, 0x42, 0xc2, 0x42, 0x6d, 0x93, 0x57, 0x6e,
- 0x67, 0x7b, 0x94, 0xdb, 0xd9, 0x63, 0xc8, 0xed, 0x6c, 0x74, 0xb9, 0x9d, 0x3d, 0x8a, 0xdc, 0x66,
- 0x6f, 0xfd, 0x4a, 0x0e, 0xf9, 0x83, 0xde, 0xfe, 0x5d, 0x6e, 0x6e, 0xcf, 0x30, 0x5a, 0xfa, 0xf5,
- 0xf9, 0xf9, 0x87, 0x0f, 0x1f, 0x7a, 0x23, 0xe2, 0xa4, 0xb6, 0xb1, 0x37, 0x4f, 0xe2, 0xfe, 0xaf,
- 0xb6, 0xea, 0x92, 0xb1, 0xa3, 0x6a, 0x8d, 0xc5, 0x8f, 0x39, 0x38, 0x55, 0x55, 0x1b, 0xc1, 0x64,
- 0x5f, 0x4c, 0x16, 0xea, 0xad, 0x0d, 0x4c, 0xd5, 0x0d, 0x6e, 0xeb, 0x55, 0x56, 0x65, 0x57, 0xad,
- 0x4b, 0xcd, 0xdd, 0x39, 0x55, 0xdb, 0x9d, 0xdf, 0x95, 0x9b, 0x84, 0xe6, 0xf3, 0x76, 0x43, 0xf3,
- 0x0c, 0x03, 0x36, 0xe1, 0xf3, 0x0f, 0x16, 0x6e, 0xd4, 0xea, 0xad, 0x2f, 0xc6, 0xc6, 0x97, 0x28,
- 0x28, 0xb9, 0x8a, 0x80, 0x5d, 0xb4, 0xb9, 0xbb, 0x0b, 0xbf, 0x62, 0xe6, 0xbe, 0x4b, 0x72, 0xdf,
- 0x2d, 0xd4, 0x5b, 0xef, 0xde, 0x5d, 0xd8, 0x1e, 0x20, 0x08, 0x5f, 0xf8, 0xbf, 0x01, 0x00, 0x00,
- 0xff, 0xff, 0xb7, 0x8b, 0x71, 0x07, 0x42, 0xb1, 0x00, 0x00,
+ // 11511 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0xbd, 0x6b, 0x70, 0x1b, 0x59,
+ 0x76, 0x18, 0xcc, 0x06, 0x08, 0x12, 0x3c, 0x00, 0x48, 0xf0, 0xf2, 0x29, 0x48, 0x1a, 0x8d, 0x5a,
+ 0x33, 0x92, 0x86, 0x23, 0x91, 0x33, 0x9c, 0x97, 0xa4, 0x79, 0x82, 0x20, 0x24, 0x50, 0xe2, 0x4b,
+ 0x0d, 0x50, 0x33, 0xa2, 0xe7, 0x9b, 0x76, 0x13, 0x68, 0x92, 0x2d, 0x02, 0x68, 0x4c, 0x77, 0x43,
+ 0x22, 0x67, 0x3c, 0x5f, 0x9c, 0xd8, 0x59, 0xdb, 0x89, 0x27, 0xde, 0x94, 0x1d, 0xaf, 0x63, 0xbb,
+ 0xb6, 0x92, 0x6c, 0xe2, 0xa4, 0xb6, 0x2a, 0x89, 0xe3, 0xbc, 0x5c, 0xde, 0xd8, 0x29, 0xe7, 0xb1,
+ 0xde, 0x72, 0x79, 0xed, 0x6c, 0xa6, 0xe2, 0x87, 0xca, 0xeb, 0x38, 0xae, 0xb5, 0xd7, 0x35, 0x5b,
+ 0x79, 0x55, 0x36, 0x5b, 0xf1, 0xe4, 0x51, 0xa9, 0xfb, 0xe8, 0x77, 0x37, 0xd0, 0x20, 0x29, 0xaf,
+ 0xcb, 0xf9, 0x05, 0xdc, 0x73, 0xcf, 0x39, 0xf7, 0xde, 0x73, 0xcf, 0x3d, 0xe7, 0xdc, 0x67, 0xc3,
+ 0x99, 0x1d, 0x55, 0xdd, 0xa9, 0xcb, 0x73, 0x2d, 0x4d, 0xb9, 0x2f, 0x55, 0x0f, 0xe6, 0x6a, 0xf5,
+ 0xd6, 0xdc, 0xfd, 0x79, 0xfc, 0x33, 0xdb, 0xd2, 0x54, 0x43, 0x45, 0x13, 0x14, 0x61, 0x96, 0x21,
+ 0xcc, 0xe2, 0x9c, 0xfb, 0xf3, 0xb9, 0x53, 0x8c, 0x4e, 0x6a, 0x29, 0x73, 0x52, 0xb3, 0xa9, 0x1a,
+ 0x92, 0xa1, 0xa8, 0x4d, 0x9d, 0x12, 0xe5, 0xa6, 0x1c, 0xb9, 0xd5, 0xba, 0x22, 0x37, 0x0d, 0x96,
+ 0x71, 0xc6, 0x91, 0xb1, 0xad, 0xc8, 0xf5, 0x9a, 0xb8, 0x25, 0xef, 0x4a, 0xf7, 0x15, 0x55, 0x63,
+ 0x08, 0x27, 0x1c, 0x08, 0x9a, 0xac, 0xab, 0x6d, 0xad, 0x2a, 0xb3, 0xac, 0x73, 0xc1, 0x55, 0xd5,
+ 0x0d, 0x55, 0x93, 0x76, 0x4c, 0xa4, 0xc7, 0x2c, 0x24, 0xd5, 0x50, 0xb7, 0xda, 0xdb, 0x73, 0xb5,
+ 0xb6, 0x46, 0xaa, 0xc6, 0xf2, 0x4f, 0x7a, 0xf3, 0xe5, 0x46, 0xcb, 0x38, 0x60, 0x99, 0x8f, 0x7b,
+ 0x33, 0x69, 0x15, 0x1b, 0x92, 0xbe, 0xe7, 0xa9, 0xbf, 0x85, 0x61, 0x28, 0x0d, 0x59, 0x37, 0xa4,
+ 0x46, 0xcb, 0xd3, 0x72, 0xad, 0x55, 0x9d, 0xd3, 0x0d, 0xc9, 0x68, 0x9b, 0x22, 0x99, 0x64, 0x19,
+ 0xc6, 0x41, 0x4b, 0x9e, 0xab, 0x49, 0x86, 0xec, 0xa9, 0x10, 0x83, 0x1f, 0xa8, 0xdb, 0x0f, 0x64,
+ 0x79, 0x2f, 0x28, 0x13, 0x17, 0xa5, 0x6e, 0xd7, 0x24, 0x56, 0x5b, 0x5e, 0x80, 0x6c, 0x71, 0xbf,
+ 0x5a, 0x6f, 0xd7, 0xe4, 0xa5, 0xe6, 0xb6, 0x5a, 0x39, 0x68, 0xc9, 0x3a, 0x7a, 0x0d, 0x40, 0x69,
+ 0x6e, 0xab, 0x22, 0x26, 0xd0, 0xa7, 0xb9, 0xc7, 0xe3, 0x17, 0x53, 0xf3, 0x67, 0x66, 0x03, 0xbb,
+ 0x70, 0xd6, 0xa4, 0x12, 0x86, 0x14, 0x93, 0x9e, 0xff, 0x28, 0x06, 0x19, 0xc2, 0x54, 0x57, 0xd4,
+ 0xa6, 0xd0, 0xae, 0xcb, 0x48, 0x00, 0xa8, 0x29, 0x55, 0x2c, 0x41, 0x49, 0x3b, 0x98, 0xe6, 0x1e,
+ 0xe7, 0x2e, 0xa6, 0xe6, 0x9f, 0x09, 0xe1, 0x58, 0x68, 0xeb, 0x86, 0xda, 0x30, 0xf9, 0xce, 0x2e,
+ 0x5a, 0x74, 0xa5, 0x3e, 0xc1, 0xc1, 0x05, 0x15, 0x20, 0xa1, 0xc9, 0x3b, 0xf2, 0xfe, 0x74, 0x8c,
+ 0xb0, 0x7b, 0x3a, 0x1a, 0x3b, 0x01, 0x93, 0x94, 0xfa, 0x04, 0x4a, 0x8b, 0xde, 0x04, 0x24, 0xd3,
+ 0xe6, 0x8b, 0x8e, 0x26, 0xc7, 0x09, 0xc7, 0x0b, 0x21, 0x1c, 0xbd, 0xf2, 0x2a, 0xf5, 0x09, 0x59,
+ 0xd9, 0x2b, 0xc3, 0x12, 0x64, 0x1a, 0x92, 0x51, 0xdd, 0x55, 0x9a, 0x3b, 0x84, 0xe9, 0x74, 0xff,
+ 0xe3, 0xdc, 0xc5, 0xe1, 0xf9, 0x73, 0x21, 0x3c, 0x57, 0x18, 0x2e, 0x11, 0x65, 0xba, 0xe1, 0x48,
+ 0x2d, 0x0c, 0x40, 0x3f, 0x66, 0xc0, 0x7f, 0x99, 0x83, 0xe1, 0xa5, 0xa6, 0xde, 0x92, 0x89, 0x04,
+ 0x88, 0x58, 0x6b, 0x90, 0xde, 0x55, 0x8d, 0x07, 0xaa, 0x56, 0x13, 0xb5, 0x76, 0x5d, 0x66, 0x82,
+ 0x7d, 0x3d, 0xa2, 0x60, 0x65, 0xc3, 0x66, 0x35, 0x5b, 0xa2, 0x7c, 0xf0, 0xff, 0x52, 0x9f, 0x90,
+ 0xda, 0xb5, 0x93, 0x68, 0x05, 0x86, 0x65, 0xb3, 0x37, 0x69, 0x39, 0x54, 0xe2, 0x4f, 0x74, 0x92,
+ 0x8f, 0xd9, 0xf5, 0xa5, 0x3e, 0x21, 0x23, 0x3b, 0x01, 0x56, 0x7b, 0x3e, 0xcd, 0xc1, 0xa8, 0xbb,
+ 0x3d, 0x65, 0xd9, 0x38, 0xaa, 0xee, 0xa1, 0x97, 0x21, 0x81, 0xab, 0xa8, 0x4f, 0xc7, 0x08, 0xe9,
+ 0x93, 0xa1, 0xa4, 0xce, 0x82, 0x05, 0x4a, 0xc3, 0x7f, 0x38, 0x08, 0x19, 0x96, 0x53, 0x50, 0x9b,
+ 0xdb, 0xca, 0xce, 0x91, 0xab, 0x53, 0x82, 0xe1, 0x86, 0xd2, 0x14, 0xeb, 0xca, 0x9e, 0x5c, 0x57,
+ 0x76, 0x55, 0xb5, 0x46, 0x64, 0x37, 0x3c, 0x7f, 0x36, 0x84, 0xc7, 0xb2, 0x85, 0x28, 0x64, 0x1a,
+ 0x4a, 0xd3, 0x4e, 0xa2, 0x9b, 0x30, 0x50, 0x57, 0x1a, 0x8a, 0x61, 0x6a, 0xe7, 0x7c, 0xe7, 0x96,
+ 0xd1, 0xfa, 0xcf, 0x5e, 0x57, 0x9a, 0x35, 0xa5, 0xb9, 0xb3, 0x4c, 0x28, 0x05, 0xc6, 0x01, 0x9d,
+ 0x83, 0x8c, 0xd2, 0xa4, 0x5a, 0xff, 0x6e, 0x5b, 0x35, 0xa8, 0x72, 0x26, 0x85, 0x34, 0x03, 0xde,
+ 0xc6, 0x30, 0x74, 0x29, 0x70, 0x68, 0x24, 0x08, 0xa6, 0x5f, 0xdf, 0x6f, 0xc3, 0x68, 0x95, 0xe8,
+ 0x97, 0x13, 0x79, 0xa0, 0x63, 0x1f, 0xb8, 0xf5, 0x51, 0x18, 0xa9, 0xba, 0xd2, 0x3a, 0x5a, 0x81,
+ 0x91, 0xaa, 0xda, 0x34, 0xe4, 0xa6, 0x21, 0xaa, 0x2d, 0xe2, 0x18, 0xa6, 0x93, 0x8f, 0xc7, 0x2f,
+ 0x0e, 0x87, 0x2a, 0x5e, 0x81, 0x62, 0xaf, 0x11, 0x64, 0x61, 0xb8, 0xea, 0x4c, 0xea, 0xa8, 0x00,
+ 0x49, 0xdc, 0xcb, 0xa2, 0x2e, 0x1b, 0xd3, 0x40, 0x2a, 0x76, 0x31, 0x92, 0x72, 0x94, 0x65, 0x43,
+ 0x18, 0xd4, 0xe8, 0x9f, 0xdc, 0x37, 0x62, 0x90, 0x71, 0xc9, 0x14, 0x3d, 0x0b, 0x13, 0x0d, 0x69,
+ 0x5f, 0xdc, 0xa6, 0x40, 0x5d, 0x6c, 0xc9, 0x9a, 0xa8, 0x18, 0x72, 0x83, 0x0c, 0xc6, 0x84, 0x80,
+ 0x1a, 0xd2, 0x3e, 0x23, 0xd0, 0xd7, 0x65, 0x6d, 0xc9, 0x90, 0x1b, 0xe8, 0x25, 0x98, 0xf6, 0x91,
+ 0x68, 0xf2, 0xbb, 0x6d, 0x59, 0x37, 0x88, 0x7a, 0x24, 0x84, 0x09, 0x37, 0x95, 0x40, 0x33, 0xd1,
+ 0x77, 0x41, 0xce, 0x5f, 0x96, 0x29, 0xee, 0xe9, 0x38, 0x69, 0xd4, 0x1b, 0xbd, 0xeb, 0x85, 0xa5,
+ 0xb9, 0x24, 0x29, 0x4c, 0x7a, 0xaa, 0xcc, 0x32, 0x73, 0x2d, 0x3c, 0x38, 0x1c, 0x88, 0xe8, 0x15,
+ 0x18, 0xb2, 0x4b, 0xa7, 0xb6, 0xa7, 0xeb, 0xd8, 0x48, 0x9a, 0x63, 0x03, 0x9d, 0x85, 0xb4, 0xb3,
+ 0x31, 0xac, 0xe5, 0x29, 0x47, 0xe1, 0xfc, 0xb7, 0x38, 0x18, 0x59, 0x38, 0x30, 0x64, 0xd6, 0xb1,
+ 0x44, 0x78, 0x8b, 0xd4, 0x7c, 0x90, 0xf2, 0x86, 0x43, 0x9d, 0x88, 0x87, 0x8a, 0xa4, 0x75, 0x52,
+ 0x01, 0x42, 0x8d, 0x10, 0xf4, 0xd7, 0x24, 0x43, 0x22, 0x85, 0xa6, 0x05, 0xf2, 0x9f, 0xff, 0x7e,
+ 0x0e, 0x86, 0x2c, 0x3c, 0x94, 0x83, 0xc9, 0x85, 0xbb, 0x95, 0x62, 0x59, 0xac, 0xdc, 0x5d, 0x2f,
+ 0x8a, 0x1b, 0xab, 0xe5, 0xf5, 0x62, 0x61, 0xe9, 0xfa, 0x52, 0x71, 0x31, 0xdb, 0x87, 0x86, 0x20,
+ 0xb1, 0xb4, 0x92, 0xbf, 0x51, 0xcc, 0x0e, 0xa0, 0x61, 0x00, 0xf2, 0x57, 0xbc, 0xb9, 0x5e, 0xbc,
+ 0x91, 0xe5, 0x50, 0x06, 0x86, 0x68, 0x7a, 0x61, 0x65, 0x3d, 0x1b, 0xb3, 0x93, 0xeb, 0xab, 0x37,
+ 0xb2, 0x71, 0x3b, 0x59, 0xbe, 0x73, 0x23, 0xdb, 0x8f, 0x93, 0x95, 0xe2, 0x5b, 0x15, 0x71, 0xa3,
+ 0x72, 0xfd, 0x4a, 0x36, 0x81, 0x92, 0xd0, 0x9f, 0xbf, 0x23, 0xac, 0x65, 0x53, 0xfc, 0xdf, 0xe7,
+ 0x20, 0xe5, 0x6c, 0xf4, 0x24, 0x24, 0xee, 0x4b, 0xf5, 0xb6, 0x4c, 0xc6, 0xfe, 0x10, 0x76, 0x5f,
+ 0x24, 0x89, 0x9e, 0x87, 0x84, 0x21, 0x6d, 0xd5, 0xe9, 0x00, 0x4e, 0xcd, 0x9f, 0x0a, 0x91, 0x46,
+ 0x05, 0xe3, 0x60, 0x2a, 0x82, 0x8c, 0x8a, 0x30, 0xb4, 0x75, 0x60, 0xc8, 0x54, 0x4d, 0x13, 0x84,
+ 0xf2, 0x7c, 0x34, 0x39, 0x96, 0xfa, 0x84, 0x24, 0x26, 0xc5, 0xff, 0x17, 0x52, 0x30, 0x84, 0xe5,
+ 0x46, 0xd8, 0xf0, 0xff, 0x88, 0x83, 0x04, 0x29, 0x06, 0x5d, 0x81, 0xc1, 0x5d, 0x59, 0xaa, 0xc9,
+ 0x9a, 0x69, 0x2f, 0x1f, 0x0b, 0xe1, 0x7d, 0x1d, 0xc7, 0x45, 0x4b, 0x35, 0xc1, 0x44, 0x47, 0xcf,
+ 0x43, 0xbf, 0xa6, 0x3e, 0x30, 0x4d, 0xf7, 0xe3, 0x9d, 0x1a, 0x33, 0x2b, 0xa8, 0x0f, 0x04, 0x82,
+ 0x9d, 0x7b, 0x19, 0xe2, 0x82, 0xfa, 0x00, 0x3d, 0x0f, 0x03, 0x44, 0x26, 0x66, 0xa9, 0x61, 0xb2,
+ 0xb8, 0x83, 0x91, 0x04, 0x86, 0xcb, 0xbf, 0x67, 0x19, 0x7c, 0x41, 0xd6, 0xdb, 0x75, 0x03, 0x5d,
+ 0x83, 0xa4, 0xa5, 0x91, 0xdd, 0xaa, 0x4f, 0xd0, 0x04, 0x0b, 0x1f, 0x5d, 0x06, 0x64, 0x0d, 0x4d,
+ 0x43, 0x6b, 0x37, 0xab, 0x92, 0x21, 0x53, 0x83, 0x9f, 0x14, 0x46, 0xcd, 0x9c, 0x8a, 0x99, 0xc1,
+ 0x7f, 0x75, 0x00, 0x06, 0x19, 0x13, 0xac, 0x8f, 0x4d, 0xa9, 0x21, 0x4f, 0x0f, 0xe3, 0xfe, 0x15,
+ 0xc8, 0x7f, 0x34, 0x0e, 0x09, 0x6a, 0x9d, 0x39, 0x02, 0xa4, 0x09, 0xf7, 0xa0, 0x8b, 0xf5, 0x3a,
+ 0xe8, 0xf2, 0x00, 0x0e, 0x5f, 0x14, 0x8f, 0xea, 0x8b, 0x1c, 0x44, 0xe8, 0x65, 0x48, 0xd6, 0xd5,
+ 0x2a, 0x09, 0x87, 0x99, 0xda, 0x85, 0x95, 0xbf, 0xcc, 0xd0, 0x04, 0x8b, 0x00, 0xbd, 0x0c, 0xa9,
+ 0xaa, 0x26, 0x4b, 0x86, 0x2c, 0xe2, 0x40, 0x74, 0x7a, 0x80, 0xd0, 0xe7, 0x6c, 0x7a, 0x1a, 0x10,
+ 0xcf, 0x56, 0xcc, 0x80, 0x58, 0x00, 0x8a, 0x8e, 0x01, 0xe8, 0x75, 0x00, 0x22, 0x03, 0x62, 0xf3,
+ 0xa6, 0x07, 0x09, 0x6d, 0x98, 0x96, 0x10, 0x1f, 0x86, 0x05, 0x20, 0x0c, 0xbd, 0x6b, 0xfe, 0x45,
+ 0x05, 0xc8, 0x98, 0xd3, 0x01, 0x91, 0x88, 0x3b, 0x89, 0x25, 0xbb, 0xf0, 0xd8, 0x27, 0xf9, 0x93,
+ 0x70, 0x02, 0x13, 0x52, 0x5e, 0x52, 0x4b, 0xd1, 0x67, 0xab, 0x6a, 0x63, 0x6e, 0xb1, 0xde, 0xba,
+ 0xa9, 0x6e, 0x09, 0x69, 0x93, 0x68, 0x15, 0x77, 0x4b, 0x11, 0xd2, 0x86, 0xa6, 0xec, 0xec, 0xc8,
+ 0x1a, 0xe5, 0x31, 0x44, 0x78, 0xf0, 0x9f, 0xe4, 0xcf, 0xc0, 0xe9, 0x00, 0x1e, 0x37, 0xd5, 0xad,
+ 0x0a, 0x45, 0x17, 0x52, 0x8c, 0x8e, 0xb0, 0x59, 0x80, 0x81, 0xba, 0xb4, 0x25, 0xd7, 0x75, 0xe6,
+ 0x8c, 0x66, 0x3a, 0xab, 0xd9, 0xec, 0x32, 0x41, 0x2e, 0x36, 0x0d, 0xed, 0x40, 0x60, 0x94, 0x68,
+ 0x01, 0x46, 0xee, 0xa9, 0x5b, 0xa2, 0x53, 0xa2, 0xa9, 0xae, 0x12, 0xcd, 0xdc, 0x53, 0xb7, 0x0a,
+ 0xb6, 0x50, 0xaf, 0x42, 0x12, 0xf3, 0x20, 0x4d, 0xc9, 0x44, 0x12, 0xc7, 0xe0, 0x3d, 0x75, 0x0b,
+ 0x37, 0x21, 0x77, 0x15, 0x52, 0x8e, 0x5a, 0xa1, 0x2c, 0xc4, 0xf7, 0xe4, 0x03, 0xa6, 0xad, 0xf8,
+ 0x2f, 0xd6, 0x60, 0x6a, 0xb6, 0x62, 0x54, 0x83, 0x49, 0xe2, 0x5a, 0xec, 0x0a, 0x77, 0x6d, 0xeb,
+ 0xe3, 0xbc, 0x08, 0x67, 0x03, 0xca, 0x60, 0xa3, 0xd1, 0x1c, 0x17, 0xd7, 0x5a, 0x9a, 0x7a, 0x4f,
+ 0xae, 0x1a, 0xfa, 0xdc, 0xfb, 0xec, 0xdf, 0x07, 0x73, 0xa6, 0x32, 0xe9, 0x73, 0xef, 0x9b, 0x7f,
+ 0x3f, 0x98, 0x33, 0x87, 0xd7, 0xdc, 0xfb, 0xec, 0xdf, 0x07, 0xfc, 0xe7, 0x62, 0x90, 0x5c, 0xb6,
+ 0x15, 0x0f, 0x88, 0xcd, 0xd3, 0xa4, 0xe6, 0x8e, 0xe9, 0xac, 0xc2, 0x4c, 0x84, 0x80, 0x71, 0x04,
+ 0x62, 0x23, 0xc9, 0x5f, 0x54, 0xc4, 0x91, 0x48, 0x4d, 0x6e, 0xa9, 0x4a, 0xd3, 0x60, 0x1c, 0x62,
+ 0x11, 0x38, 0x0c, 0x5b, 0x44, 0x94, 0x4d, 0x19, 0x46, 0xcd, 0x80, 0xc6, 0x6a, 0xc3, 0xf4, 0x20,
+ 0xe9, 0xfd, 0xf3, 0x9d, 0x43, 0x1a, 0x6b, 0x24, 0x65, 0xab, 0x6e, 0x00, 0x9e, 0xac, 0x0d, 0x61,
+ 0x98, 0xa4, 0x34, 0x65, 0x8d, 0xe8, 0x73, 0xf8, 0x98, 0x28, 0x98, 0x78, 0x82, 0x4d, 0xc2, 0xff,
+ 0xd3, 0x38, 0x8c, 0x78, 0x4a, 0x41, 0x4f, 0xc2, 0xb0, 0x85, 0x40, 0x35, 0x83, 0x76, 0x6a, 0xc6,
+ 0x82, 0x12, 0x15, 0x5e, 0x87, 0x11, 0x4d, 0xae, 0xe2, 0xd9, 0x87, 0x65, 0x10, 0xa8, 0x58, 0xc2,
+ 0x22, 0x3e, 0x81, 0x60, 0x9b, 0xc5, 0x94, 0xfa, 0x84, 0x61, 0xcd, 0x05, 0xc1, 0x53, 0x0d, 0xa5,
+ 0x21, 0xed, 0xc8, 0x36, 0xc3, 0x78, 0xc7, 0xa9, 0xc6, 0x12, 0x46, 0x76, 0xf0, 0xcb, 0x28, 0x4e,
+ 0x00, 0xba, 0x03, 0xa3, 0x35, 0xb5, 0xda, 0x6e, 0x38, 0x25, 0xce, 0x1c, 0x5e, 0xd8, 0xe4, 0x6e,
+ 0x91, 0xe1, 0x3b, 0x98, 0x66, 0x6b, 0x1e, 0x18, 0xba, 0x05, 0x63, 0xb6, 0x7c, 0xac, 0xc9, 0x7b,
+ 0x04, 0x6b, 0x86, 0x2c, 0x32, 0x0b, 0x86, 0x9e, 0xa6, 0x5a, 0x41, 0x99, 0xdd, 0x97, 0x35, 0x3c,
+ 0x51, 0x22, 0xc6, 0x6d, 0x88, 0xf6, 0x36, 0xc9, 0xb8, 0x43, 0xe1, 0x0b, 0x60, 0x1b, 0x5f, 0xfe,
+ 0x39, 0xc8, 0x7a, 0x6b, 0x8b, 0xce, 0x40, 0x6a, 0x5b, 0xa9, 0xcb, 0xa2, 0xba, 0xbd, 0x8d, 0xe3,
+ 0x5c, 0xdc, 0x6d, 0x71, 0x01, 0x30, 0x68, 0x8d, 0x40, 0xf8, 0xdf, 0xe2, 0x60, 0xd8, 0xdd, 0x0d,
+ 0xd8, 0xac, 0xb2, 0x6e, 0x34, 0x87, 0x6f, 0xb8, 0x0a, 0x51, 0xd2, 0x5b, 0xf2, 0x81, 0x30, 0xa4,
+ 0x99, 0x7f, 0xb1, 0x09, 0xa1, 0x6b, 0x1c, 0x4a, 0x8d, 0x29, 0x40, 0x57, 0x97, 0xbf, 0x4d, 0xff,
+ 0xa0, 0x5b, 0x30, 0x4c, 0x62, 0x92, 0xa8, 0x1d, 0x4e, 0x9c, 0xbf, 0x35, 0x1a, 0x32, 0x86, 0x33,
+ 0xc9, 0x5f, 0x82, 0x8c, 0x2b, 0x1f, 0x9d, 0x84, 0x21, 0x4d, 0x7d, 0x20, 0x2a, 0xcd, 0x9a, 0xbc,
+ 0xcf, 0x64, 0x91, 0xd4, 0xd4, 0x07, 0x4b, 0x38, 0xcd, 0x7f, 0x93, 0x83, 0x21, 0x6b, 0x44, 0x60,
+ 0x07, 0x6c, 0x85, 0x95, 0x43, 0x2c, 0x48, 0x3c, 0x0d, 0xc0, 0x8c, 0x8e, 0xd9, 0xb2, 0x21, 0x61,
+ 0x88, 0x41, 0x96, 0x6a, 0x98, 0xfb, 0x76, 0xbb, 0x5e, 0x17, 0x5b, 0x92, 0xb1, 0x4b, 0x03, 0x33,
+ 0x21, 0x89, 0x01, 0xeb, 0x92, 0xb1, 0x4b, 0x8b, 0x56, 0x0d, 0x9a, 0xd9, 0x4f, 0x33, 0x31, 0x80,
+ 0x64, 0x9e, 0xc3, 0x7e, 0xa8, 0x2e, 0x19, 0xca, 0x7d, 0x99, 0x22, 0x24, 0x08, 0x42, 0xda, 0x04,
+ 0x12, 0xa4, 0x97, 0x21, 0xd5, 0x6e, 0xd5, 0x7a, 0x71, 0x95, 0x14, 0x9d, 0x58, 0xf5, 0x69, 0x18,
+ 0x74, 0xab, 0x92, 0x99, 0xe4, 0xe7, 0x20, 0x41, 0xad, 0xd1, 0x38, 0x24, 0x74, 0x43, 0xd2, 0x4c,
+ 0x25, 0xa1, 0x09, 0x6c, 0xc4, 0xe5, 0x26, 0x6d, 0x6c, 0x5c, 0xc0, 0x7f, 0xf9, 0x4d, 0xc8, 0xb8,
+ 0x86, 0x19, 0x5a, 0x82, 0xe1, 0x2d, 0xb5, 0x4d, 0x8c, 0xac, 0xb8, 0xa5, 0xee, 0x5b, 0x11, 0x17,
+ 0x1f, 0x16, 0x43, 0x32, 0xe4, 0x05, 0x75, 0x5f, 0xc8, 0x6c, 0xd9, 0x09, 0x59, 0xe7, 0x25, 0x48,
+ 0x39, 0x72, 0x71, 0xe1, 0x86, 0xda, 0x62, 0x33, 0x27, 0xfc, 0x17, 0x77, 0x4b, 0x5d, 0xde, 0x36,
+ 0xa7, 0x45, 0xe4, 0x3f, 0xae, 0xf8, 0x03, 0xa5, 0xc6, 0x64, 0x9e, 0x10, 0x68, 0x02, 0x4d, 0xc2,
+ 0xc0, 0xae, 0xac, 0xec, 0xec, 0x1a, 0x44, 0xda, 0x09, 0x81, 0xa5, 0xf8, 0xef, 0x4f, 0x00, 0x12,
+ 0xe4, 0x9a, 0x54, 0x35, 0x48, 0x2b, 0xcc, 0xa9, 0x54, 0x09, 0x06, 0x5a, 0x92, 0x26, 0x37, 0x69,
+ 0xf3, 0x87, 0x16, 0x9e, 0xf9, 0x24, 0x7f, 0x19, 0x9e, 0xae, 0xd6, 0xd5, 0x76, 0xcd, 0xf4, 0xf6,
+ 0x0d, 0xa9, 0x29, 0xed, 0xc8, 0x9a, 0xd7, 0x43, 0xad, 0x53, 0x05, 0x10, 0x18, 0x3d, 0x1e, 0x72,
+ 0xa6, 0xf2, 0x62, 0x35, 0x21, 0x21, 0x85, 0x00, 0x26, 0x88, 0xea, 0xb8, 0x42, 0xbd, 0x9a, 0x58,
+ 0x25, 0xb3, 0xaf, 0x2e, 0xeb, 0x27, 0xae, 0x99, 0x9a, 0x90, 0x51, 0x5c, 0x0b, 0x12, 0xf7, 0x61,
+ 0x8a, 0x5a, 0x48, 0x8d, 0xb4, 0x09, 0x17, 0x4a, 0x99, 0xe2, 0xa9, 0x39, 0xee, 0x85, 0xd7, 0x42,
+ 0x47, 0xae, 0x57, 0x06, 0xb3, 0x2c, 0xc1, 0xf8, 0xb0, 0xf2, 0x26, 0x94, 0x00, 0xa8, 0x8e, 0x9e,
+ 0x82, 0xac, 0xb9, 0x64, 0x60, 0xc5, 0xc7, 0x03, 0x24, 0xb2, 0x1d, 0x61, 0x70, 0x73, 0xd6, 0x86,
+ 0x0a, 0xce, 0xe9, 0xc5, 0x60, 0x2f, 0xd3, 0x0b, 0x7b, 0x72, 0x91, 0xfb, 0x0a, 0x07, 0xe3, 0x41,
+ 0xf5, 0xc3, 0xfe, 0xae, 0xd7, 0x49, 0x27, 0x9e, 0xb5, 0x58, 0x11, 0xf0, 0x45, 0xec, 0xb4, 0x30,
+ 0x4b, 0x51, 0xaa, 0xd7, 0x45, 0x43, 0xde, 0xa7, 0xca, 0x95, 0xc4, 0xde, 0x83, 0x66, 0xe4, 0xeb,
+ 0xf5, 0x8a, 0xbc, 0x6f, 0x60, 0xaf, 0xef, 0x14, 0x72, 0x5d, 0xd5, 0x98, 0x71, 0x3a, 0x15, 0xea,
+ 0x5f, 0xeb, 0xaa, 0x86, 0x7d, 0x9a, 0x55, 0xe3, 0xba, 0xaa, 0x2d, 0x24, 0x61, 0xc0, 0x90, 0xb4,
+ 0x1d, 0xd9, 0xe0, 0x0b, 0x90, 0x20, 0x20, 0xac, 0xe7, 0x9a, 0x5c, 0x23, 0xb5, 0x8f, 0x09, 0xf8,
+ 0x2f, 0xd6, 0xe9, 0x1d, 0x4d, 0x96, 0xa9, 0x03, 0x8d, 0x09, 0x34, 0x81, 0xb5, 0x7f, 0xcb, 0x9c,
+ 0xf5, 0xc5, 0x04, 0xf2, 0x9f, 0xff, 0x69, 0x0e, 0xc6, 0x5c, 0x7d, 0xa9, 0xb7, 0xd4, 0xa6, 0x2e,
+ 0x63, 0x9f, 0x4d, 0x0b, 0x96, 0x6b, 0x22, 0xe9, 0x42, 0xc2, 0x3e, 0x6d, 0x36, 0x4a, 0xae, 0x11,
+ 0x74, 0x8c, 0x26, 0xef, 0x1b, 0x1a, 0xc5, 0xb3, 0x5a, 0x3f, 0x24, 0x64, 0x2c, 0x28, 0x69, 0xbb,
+ 0x43, 0x67, 0x35, 0x32, 0x31, 0xea, 0xe6, 0x88, 0x9d, 0x93, 0x28, 0x4b, 0x67, 0x69, 0x92, 0xff,
+ 0xd5, 0x38, 0x4c, 0x2f, 0xca, 0x4a, 0x4d, 0x6e, 0x1a, 0xca, 0xf6, 0x01, 0xeb, 0xef, 0xe3, 0x1f,
+ 0x88, 0x15, 0x18, 0xad, 0x59, 0xa5, 0xb8, 0x87, 0x5a, 0xa8, 0xb7, 0x77, 0xd6, 0x0a, 0x6b, 0x7f,
+ 0xb6, 0xe6, 0x81, 0x04, 0x8c, 0xde, 0xf8, 0xe1, 0x47, 0xef, 0x8b, 0xd0, 0x4f, 0x46, 0x05, 0x9d,
+ 0x37, 0xf1, 0x9d, 0x83, 0x3e, 0x32, 0x22, 0x08, 0x3e, 0x9a, 0x87, 0x09, 0xb3, 0x12, 0x86, 0xdc,
+ 0x68, 0xd5, 0xb1, 0x57, 0x20, 0x71, 0x19, 0x75, 0x1c, 0x63, 0x2c, 0xb3, 0xc2, 0xf2, 0x48, 0x74,
+ 0x76, 0x05, 0xa6, 0x1d, 0xe2, 0x70, 0x93, 0x0d, 0x10, 0xb2, 0x49, 0x3b, 0xdf, 0x45, 0xe9, 0xb1,
+ 0x68, 0x83, 0x5e, 0x8b, 0xc6, 0x7f, 0x96, 0x83, 0x13, 0x01, 0x1d, 0xca, 0x34, 0xd1, 0x6c, 0x24,
+ 0xd7, 0x63, 0x23, 0x97, 0x20, 0xa9, 0xde, 0x97, 0xb5, 0xfb, 0x8a, 0xfc, 0x80, 0x75, 0xdb, 0xe5,
+ 0xb0, 0x28, 0x40, 0x93, 0x9a, 0xfa, 0xb6, 0xaa, 0x35, 0x48, 0x85, 0xd6, 0x18, 0x91, 0x60, 0x91,
+ 0xf3, 0x5f, 0x89, 0xc3, 0xb4, 0x10, 0xa6, 0x71, 0xb7, 0x3c, 0x1a, 0xf7, 0xdc, 0xef, 0xe6, 0x63,
+ 0x47, 0x51, 0x3a, 0xed, 0xc8, 0x4a, 0xa7, 0xfd, 0x69, 0x52, 0x3a, 0xad, 0x8b, 0xd2, 0x69, 0x47,
+ 0x50, 0x3a, 0xe1, 0x4f, 0xb2, 0xd2, 0x7d, 0x21, 0x06, 0x13, 0x76, 0x47, 0x3c, 0x1a, 0x1b, 0x77,
+ 0xac, 0xb1, 0x84, 0x29, 0xb3, 0xf8, 0x71, 0x29, 0x46, 0x7f, 0xb8, 0x62, 0x78, 0xba, 0x37, 0xe1,
+ 0xeb, 0xde, 0x3b, 0x30, 0xe9, 0x15, 0x1e, 0xeb, 0xda, 0x57, 0x60, 0x80, 0xf9, 0x20, 0xae, 0x07,
+ 0x1f, 0xc4, 0x68, 0xf8, 0x5f, 0x89, 0xc1, 0xd8, 0x5a, 0xdb, 0x68, 0xb5, 0x8d, 0x32, 0xdd, 0xe3,
+ 0x65, 0x8d, 0x7f, 0xc5, 0x5c, 0x3a, 0xed, 0xcc, 0x74, 0x41, 0xd9, 0xb9, 0xdd, 0x96, 0xb5, 0x03,
+ 0xcf, 0x12, 0xea, 0xdb, 0x90, 0x51, 0x09, 0x53, 0x51, 0xaf, 0xee, 0xca, 0x0d, 0x89, 0x2d, 0xa5,
+ 0xbd, 0x14, 0xc2, 0x25, 0xa0, 0x02, 0x26, 0x8c, 0x90, 0x0b, 0x69, 0xd5, 0x91, 0xe2, 0x3f, 0xcd,
+ 0x41, 0xda, 0x99, 0x8d, 0x4e, 0xc3, 0x89, 0xb5, 0x8d, 0xca, 0xfa, 0x46, 0x45, 0x2c, 0x17, 0x4a,
+ 0xc5, 0x95, 0xbc, 0x67, 0x3d, 0x7a, 0x14, 0x32, 0x0b, 0xf9, 0xf2, 0x52, 0x41, 0x2c, 0xac, 0x2d,
+ 0x6f, 0xac, 0xac, 0x96, 0xb3, 0x1c, 0x1a, 0x81, 0xd4, 0x8d, 0x42, 0xd9, 0x02, 0xc4, 0xd0, 0x04,
+ 0x8c, 0x2e, 0xe6, 0x2b, 0xf9, 0x72, 0x65, 0x4d, 0x28, 0x5a, 0xe0, 0x38, 0x06, 0x2f, 0x2c, 0xdd,
+ 0x10, 0x6f, 0x6f, 0x14, 0x85, 0xbb, 0x16, 0xb8, 0x1f, 0x93, 0xe7, 0x97, 0x97, 0x2d, 0x40, 0xc2,
+ 0xda, 0xb5, 0xab, 0xda, 0x9b, 0x00, 0x65, 0x43, 0x32, 0xf4, 0x23, 0x6e, 0x02, 0x8c, 0x43, 0xa2,
+ 0xaa, 0xb6, 0x9b, 0x06, 0x9b, 0x70, 0xd0, 0x04, 0xff, 0xb9, 0x04, 0x4c, 0xb3, 0xde, 0x5c, 0x94,
+ 0x0c, 0xa9, 0x4c, 0x46, 0xc8, 0xa2, 0x6c, 0x48, 0x4a, 0x5d, 0x47, 0x0d, 0x6c, 0x71, 0xc9, 0xb8,
+ 0x92, 0x6b, 0xd6, 0xc6, 0x10, 0x1d, 0x05, 0x5d, 0xf6, 0x3e, 0x7c, 0xbc, 0x66, 0x05, 0x93, 0x11,
+ 0xdb, 0x24, 0xc2, 0xa6, 0xd8, 0x0d, 0x41, 0xab, 0x96, 0xf6, 0xd1, 0x61, 0xf2, 0x62, 0xef, 0x65,
+ 0x38, 0xf5, 0x31, 0xf7, 0x0b, 0x1c, 0x64, 0xbd, 0xc5, 0xa2, 0x2d, 0x38, 0xa1, 0x37, 0xa5, 0x96,
+ 0xbe, 0xab, 0x1a, 0xa2, 0x77, 0x68, 0x31, 0xa1, 0x9e, 0xef, 0x5c, 0xae, 0x39, 0xd8, 0x84, 0x29,
+ 0x93, 0x91, 0x27, 0x03, 0x5d, 0x07, 0x20, 0x8b, 0x85, 0x4e, 0x7f, 0x72, 0xa1, 0x33, 0xd3, 0x9b,
+ 0xea, 0x16, 0xb3, 0x1c, 0x43, 0xf7, 0xcc, 0xbf, 0xb9, 0x4f, 0xc5, 0x60, 0x80, 0x2d, 0x96, 0x5f,
+ 0x80, 0x91, 0x96, 0xa6, 0x56, 0x65, 0x5d, 0x97, 0x6b, 0x22, 0x0e, 0xdd, 0x75, 0x36, 0x99, 0x1c,
+ 0xb6, 0xc0, 0x64, 0x43, 0x05, 0x5b, 0x0c, 0x43, 0x35, 0xa4, 0xba, 0x28, 0xeb, 0x86, 0xd2, 0x90,
+ 0x0c, 0x0b, 0x9d, 0x76, 0xfb, 0x18, 0xc9, 0x2c, 0x9a, 0x79, 0x94, 0x66, 0x19, 0x46, 0x2c, 0xc5,
+ 0x12, 0x75, 0xac, 0x6b, 0x6c, 0x87, 0xeb, 0x89, 0x2e, 0xea, 0x45, 0xf4, 0x12, 0xdb, 0x3a, 0xa7,
+ 0x9a, 0xde, 0x86, 0xf4, 0xee, 0xc1, 0x96, 0xa6, 0xd4, 0x18, 0x2b, 0x3a, 0x2f, 0x99, 0x0d, 0x61,
+ 0x55, 0x22, 0xa8, 0x4c, 0x0a, 0x98, 0x81, 0xa2, 0x1b, 0x4a, 0x55, 0x17, 0x52, 0x94, 0x07, 0x61,
+ 0xc9, 0xff, 0x20, 0x07, 0x53, 0x21, 0x88, 0x6e, 0xc9, 0x50, 0x0d, 0xf7, 0x4a, 0xa6, 0x80, 0xa1,
+ 0xe8, 0x1c, 0x64, 0xa4, 0x2d, 0x55, 0x33, 0x2c, 0x34, 0x2a, 0x91, 0x34, 0x03, 0x5a, 0x48, 0x2d,
+ 0x99, 0x4e, 0xb8, 0x29, 0x52, 0x9c, 0x22, 0x31, 0x20, 0x41, 0xe2, 0x7f, 0x9e, 0x83, 0x31, 0x53,
+ 0x04, 0x8b, 0xb2, 0x5e, 0xd5, 0x14, 0xa2, 0x5c, 0xd6, 0xd6, 0x02, 0xe7, 0xd8, 0x5a, 0x38, 0x0b,
+ 0xe9, 0x9a, 0xa2, 0xb7, 0xea, 0xd2, 0x01, 0x35, 0xdc, 0x74, 0x0e, 0x90, 0x62, 0x30, 0x62, 0xb0,
+ 0x57, 0x20, 0xad, 0xb7, 0x5b, 0x2d, 0x5a, 0xb5, 0xad, 0x03, 0x22, 0xfb, 0xe1, 0xd0, 0x55, 0x6a,
+ 0x4b, 0xf6, 0x26, 0xc9, 0xc2, 0x81, 0x90, 0xd2, 0xed, 0x04, 0x7a, 0x1c, 0x52, 0x35, 0xbb, 0x52,
+ 0xcc, 0x53, 0x38, 0x41, 0xbc, 0x01, 0xe3, 0xcb, 0x8a, 0x6e, 0x58, 0xfb, 0xbf, 0xa6, 0xf3, 0x3c,
+ 0x07, 0x99, 0xba, 0xd4, 0xdc, 0x69, 0xe3, 0x49, 0x6f, 0x55, 0xad, 0x99, 0x0d, 0x49, 0x9b, 0xc0,
+ 0x82, 0x5a, 0x93, 0xf1, 0xec, 0x7f, 0x5b, 0xa9, 0x1b, 0xb2, 0xc6, 0x9a, 0xc2, 0x52, 0x5e, 0xb7,
+ 0x13, 0xf7, 0xb9, 0x9d, 0x2d, 0x98, 0xf0, 0x94, 0xca, 0xbc, 0xce, 0x52, 0xc0, 0xce, 0x7f, 0xb7,
+ 0xd6, 0x3b, 0xc4, 0xee, 0x3c, 0x0f, 0xf3, 0x07, 0x1c, 0x4c, 0x08, 0x8a, 0xbe, 0x97, 0x6f, 0x4a,
+ 0xf5, 0x03, 0x5d, 0xd1, 0xad, 0x61, 0x85, 0xdd, 0x39, 0x63, 0x25, 0x36, 0x64, 0x43, 0x53, 0xaa,
+ 0x5d, 0xbc, 0xd1, 0x3a, 0x4d, 0xae, 0x10, 0x5c, 0x21, 0xd3, 0x72, 0x26, 0xd1, 0x0d, 0x48, 0xb3,
+ 0xbd, 0x0d, 0xea, 0xd8, 0x62, 0xd1, 0x1d, 0x9b, 0x90, 0xa2, 0x94, 0x74, 0x07, 0xef, 0x25, 0x18,
+ 0xa4, 0x13, 0x58, 0x73, 0xc4, 0x9d, 0x0e, 0xe1, 0x91, 0xa7, 0x9b, 0xe4, 0x26, 0x36, 0xff, 0x7b,
+ 0x1c, 0x0c, 0xde, 0x6e, 0x4b, 0xba, 0xb2, 0x54, 0x43, 0x57, 0x21, 0x41, 0x16, 0xf9, 0x58, 0x8b,
+ 0xba, 0xac, 0x08, 0x2e, 0xc4, 0x7f, 0x37, 0x1f, 0x13, 0x28, 0x85, 0x7b, 0x8a, 0x1f, 0xeb, 0x7d,
+ 0x8a, 0x7f, 0x06, 0x80, 0x9d, 0x45, 0x30, 0xa4, 0x1d, 0x6b, 0xcb, 0x74, 0x88, 0xc2, 0x2a, 0xd2,
+ 0x0e, 0x7a, 0x1e, 0x30, 0xb2, 0xac, 0xe1, 0x49, 0x38, 0x8d, 0x8a, 0x27, 0x7d, 0xeb, 0x6a, 0xc5,
+ 0x46, 0xcb, 0x38, 0x60, 0x6c, 0x09, 0xe6, 0x42, 0x02, 0xe2, 0x86, 0xb4, 0xc3, 0x7f, 0x33, 0x06,
+ 0x59, 0x6b, 0xa4, 0x4b, 0x75, 0x2a, 0xb2, 0xd7, 0xcd, 0x68, 0x22, 0x1e, 0x5d, 0xe8, 0xac, 0xcd,
+ 0x34, 0xa0, 0x78, 0x07, 0x86, 0xde, 0xc5, 0x92, 0x13, 0x95, 0x9a, 0xa9, 0x6d, 0xaf, 0x84, 0x30,
+ 0xf1, 0x16, 0x3e, 0xcb, 0x44, 0x4e, 0x02, 0x63, 0x45, 0xd6, 0x88, 0x48, 0x29, 0xf3, 0xe4, 0xbb,
+ 0x34, 0x4b, 0x47, 0x02, 0x20, 0x6b, 0xc9, 0x71, 0x9b, 0x38, 0xb9, 0x66, 0xf5, 0x20, 0xda, 0x6a,
+ 0x2d, 0x65, 0x35, 0x6a, 0x92, 0x5f, 0x37, 0xa9, 0x73, 0x7b, 0x30, 0x1e, 0x54, 0x34, 0x7a, 0xbe,
+ 0xa7, 0xae, 0x37, 0x7b, 0xfd, 0xb4, 0xab, 0xd7, 0xd8, 0x6a, 0xab, 0xd5, 0x67, 0xfc, 0xa7, 0x10,
+ 0x64, 0x5c, 0xea, 0x8f, 0xde, 0x85, 0xc9, 0x66, 0xbb, 0x21, 0x6b, 0x58, 0x10, 0xd4, 0xaa, 0x9b,
+ 0xce, 0x8d, 0x96, 0x7b, 0x35, 0xca, 0x20, 0x9a, 0x5d, 0x35, 0x59, 0x10, 0xa3, 0x4e, 0xc7, 0x65,
+ 0xa9, 0x4f, 0x18, 0x6f, 0x06, 0xc0, 0xd1, 0x03, 0x98, 0xae, 0x4a, 0x86, 0xbc, 0xa3, 0x06, 0x14,
+ 0x4a, 0x65, 0xf9, 0x72, 0xa4, 0x42, 0x0b, 0x36, 0x13, 0x77, 0xb1, 0x93, 0xd5, 0xc0, 0x1c, 0x24,
+ 0x03, 0xda, 0x13, 0xa5, 0xa6, 0xda, 0x3c, 0x68, 0x28, 0xc6, 0x81, 0xdb, 0x89, 0xbf, 0x10, 0xa9,
+ 0xc8, 0x5b, 0x79, 0x93, 0xda, 0x2a, 0x2c, 0xbb, 0xe7, 0x81, 0xe1, 0x62, 0xea, 0x62, 0x4d, 0x21,
+ 0x6b, 0xc5, 0x76, 0x31, 0xfd, 0x3d, 0x14, 0xb3, 0xbc, 0x68, 0x52, 0xdb, 0xc5, 0xd4, 0x3d, 0x30,
+ 0xa4, 0xc1, 0xd4, 0x9e, 0xd8, 0x90, 0x5a, 0x66, 0x38, 0x60, 0xaf, 0x62, 0xb2, 0xdd, 0x99, 0x68,
+ 0x5d, 0x77, 0x6b, 0x45, 0x6a, 0x15, 0x2d, 0x0e, 0x76, 0xd7, 0xed, 0x05, 0xc0, 0xd1, 0x87, 0x1c,
+ 0x3c, 0x5e, 0x93, 0xeb, 0x86, 0x24, 0xb6, 0x34, 0x59, 0x97, 0x9b, 0x55, 0x39, 0xa0, 0x74, 0xba,
+ 0xc8, 0xbe, 0x10, 0xa9, 0xf4, 0x45, 0xcc, 0x6c, 0x9d, 0xf1, 0x0a, 0xa8, 0xc6, 0xe9, 0x5a, 0x27,
+ 0x84, 0xdc, 0x32, 0x8c, 0x07, 0xa9, 0xde, 0xe1, 0x06, 0x4f, 0x6e, 0x15, 0x26, 0x83, 0x75, 0xea,
+ 0x90, 0xfc, 0x3e, 0xe4, 0x20, 0xeb, 0xd5, 0x18, 0xf4, 0xb2, 0xdf, 0x46, 0x75, 0x63, 0x67, 0x1b,
+ 0xa0, 0x57, 0x60, 0x08, 0x5b, 0x09, 0xe3, 0xc0, 0xde, 0x25, 0x0a, 0x33, 0xea, 0x45, 0x82, 0x87,
+ 0xa9, 0x65, 0xf6, 0x2f, 0xf7, 0xd7, 0x38, 0xc8, 0x7a, 0x55, 0xeb, 0x68, 0xf5, 0x59, 0x83, 0x31,
+ 0x5d, 0x6e, 0xea, 0x0a, 0xb1, 0x88, 0x92, 0x61, 0x68, 0xca, 0x56, 0xdb, 0x90, 0x23, 0xee, 0x5f,
+ 0x21, 0x8b, 0x34, 0x6f, 0x52, 0xe6, 0xbe, 0x77, 0x10, 0xc6, 0x83, 0x34, 0x12, 0xed, 0xf8, 0xab,
+ 0x59, 0x3c, 0xb4, 0x7e, 0xcf, 0x56, 0xa4, 0x9d, 0x1d, 0xb9, 0x16, 0x68, 0xe3, 0xcf, 0x40, 0x4a,
+ 0x93, 0x77, 0xa8, 0x3a, 0xd7, 0xcc, 0xa0, 0x0e, 0x28, 0x88, 0x44, 0x49, 0x3a, 0x64, 0xa5, 0xf6,
+ 0xbe, 0x52, 0x57, 0x24, 0xed, 0x80, 0x06, 0x09, 0xa6, 0x87, 0x2f, 0x1d, 0xbe, 0x42, 0x79, 0x93,
+ 0x23, 0x8d, 0x24, 0x46, 0x24, 0x57, 0x5a, 0xcf, 0xfd, 0x01, 0x07, 0x29, 0x47, 0xa5, 0xff, 0xd4,
+ 0x06, 0x06, 0xb9, 0xef, 0x89, 0xc3, 0xb0, 0x5b, 0x18, 0x47, 0x0f, 0x0b, 0x1e, 0xf8, 0x75, 0x67,
+ 0xe3, 0xb8, 0xba, 0xca, 0x8c, 0x1b, 0xfe, 0xd8, 0xe2, 0x85, 0x2a, 0xa4, 0x9d, 0x45, 0x3e, 0x92,
+ 0x38, 0x21, 0xf7, 0xeb, 0x1c, 0x9c, 0xee, 0x68, 0x9a, 0xd1, 0x1b, 0xd1, 0xcd, 0x06, 0xab, 0x6e,
+ 0xcf, 0x03, 0x4d, 0x08, 0x1d, 0x68, 0x17, 0x22, 0x06, 0x75, 0xbe, 0x71, 0x64, 0xad, 0xc0, 0xfc,
+ 0xf0, 0x79, 0x38, 0x45, 0x66, 0x12, 0xef, 0xc9, 0xf6, 0x62, 0x03, 0x9e, 0x5e, 0x98, 0x0b, 0x24,
+ 0xef, 0xc0, 0xb4, 0xbd, 0x40, 0x72, 0x84, 0xe9, 0xc5, 0xa4, 0xc5, 0xc5, 0x1d, 0x77, 0x6d, 0x82,
+ 0x9d, 0x23, 0x1e, 0x7a, 0xc6, 0x31, 0x6e, 0xf1, 0x28, 0x3b, 0xa6, 0x1e, 0xdf, 0xcd, 0xf9, 0x83,
+ 0x3a, 0xd7, 0xf2, 0x4b, 0x98, 0xa1, 0xea, 0x24, 0x11, 0x4f, 0x8c, 0x47, 0x17, 0x2f, 0xfc, 0x31,
+ 0x1e, 0x5b, 0xd4, 0xf8, 0x14, 0x17, 0x14, 0xe4, 0xb1, 0x4a, 0x50, 0xa3, 0x70, 0xf3, 0x30, 0x95,
+ 0xf0, 0xfa, 0x67, 0xab, 0x1a, 0xbe, 0x98, 0x8f, 0x55, 0xc4, 0x70, 0xc7, 0x7c, 0xac, 0x06, 0x34,
+ 0x40, 0x5a, 0x3c, 0x4c, 0x0d, 0x6c, 0x87, 0x6e, 0x95, 0xed, 0x08, 0x01, 0xed, 0x52, 0x9d, 0x21,
+ 0x20, 0x2b, 0x75, 0xe0, 0xf0, 0xa5, 0xda, 0x6e, 0xdb, 0x2e, 0xb5, 0xee, 0x81, 0xa1, 0x3f, 0xcb,
+ 0x05, 0x84, 0x84, 0xac, 0xec, 0xc1, 0xc3, 0x77, 0xbc, 0xdb, 0x0a, 0xda, 0x1d, 0xbf, 0x17, 0x00,
+ 0x47, 0x3f, 0xd9, 0x31, 0x42, 0x64, 0x95, 0x19, 0x22, 0x95, 0xb9, 0x7d, 0x98, 0xca, 0x84, 0x58,
+ 0x25, 0xab, 0x56, 0x61, 0x01, 0x23, 0x45, 0xc8, 0x7d, 0xc4, 0x79, 0x23, 0x46, 0x56, 0xef, 0xab,
+ 0x30, 0xd4, 0x50, 0x9a, 0x22, 0x3d, 0x69, 0xd7, 0xf9, 0x64, 0x1b, 0x3d, 0xfc, 0x9a, 0x6c, 0x28,
+ 0x4d, 0xf2, 0x8f, 0x90, 0x4a, 0xfb, 0xa2, 0x7d, 0x48, 0xaf, 0x3b, 0xa9, 0xb4, 0x4f, 0x49, 0x8b,
+ 0x30, 0xf2, 0x6e, 0x5b, 0x6a, 0x1a, 0x4a, 0x5d, 0x16, 0xd9, 0xc1, 0xdb, 0xfe, 0x08, 0x07, 0x6f,
+ 0x87, 0x4d, 0x22, 0x92, 0xd4, 0x73, 0x1f, 0xf6, 0xfb, 0x23, 0x57, 0xd6, 0xae, 0x7f, 0xcc, 0xc1,
+ 0x59, 0xc2, 0xd9, 0x76, 0x40, 0xe2, 0xae, 0xa2, 0x1b, 0xea, 0x8e, 0x26, 0x35, 0xc4, 0xad, 0x76,
+ 0x75, 0x4f, 0x36, 0xcc, 0x53, 0x0f, 0xf7, 0x8e, 0x6f, 0x44, 0xfa, 0xc0, 0x25, 0xb3, 0xcc, 0x05,
+ 0x52, 0xa4, 0xf0, 0x18, 0xa9, 0x94, 0xe5, 0xd6, 0x3c, 0xd9, 0x7a, 0xee, 0xe7, 0x62, 0x70, 0xa6,
+ 0x0b, 0x0f, 0xf4, 0x2a, 0x9c, 0xf4, 0x36, 0xad, 0xae, 0x3e, 0x90, 0x35, 0x91, 0x9c, 0x8f, 0x61,
+ 0x6b, 0x85, 0xd3, 0xee, 0x82, 0x96, 0x31, 0x02, 0x39, 0x2e, 0x13, 0x44, 0xde, 0x6e, 0xb5, 0x2c,
+ 0xf2, 0x58, 0x10, 0xf9, 0x06, 0x46, 0xa0, 0xe4, 0x67, 0x20, 0x45, 0xc5, 0x27, 0xea, 0xca, 0x7b,
+ 0x32, 0x5b, 0x4d, 0x04, 0x0a, 0x2a, 0x2b, 0xef, 0xc9, 0xe8, 0x26, 0x64, 0x18, 0x82, 0xab, 0x6b,
+ 0x9f, 0xec, 0xd4, 0xb5, 0x56, 0x41, 0x42, 0x9a, 0xd2, 0xd2, 0x1e, 0x46, 0x97, 0x00, 0x39, 0x79,
+ 0xb1, 0x15, 0xcc, 0x04, 0x29, 0x33, 0xeb, 0xc0, 0x24, 0xab, 0x98, 0xb9, 0x6f, 0x24, 0x9c, 0x13,
+ 0x0f, 0xa6, 0x09, 0x7f, 0x97, 0x83, 0x73, 0xf2, 0xbb, 0x6d, 0xe5, 0xbe, 0x54, 0x27, 0xc3, 0xb2,
+ 0x5a, 0x97, 0x74, 0x3d, 0x54, 0x17, 0xde, 0x39, 0x0e, 0xdb, 0xe8, 0x00, 0x78, 0xfb, 0xff, 0x71,
+ 0x47, 0x55, 0x0a, 0xb8, 0x26, 0x3e, 0x0d, 0xf8, 0x71, 0x0e, 0x72, 0x36, 0x7d, 0xd1, 0x83, 0x8e,
+ 0xae, 0x43, 0xd6, 0x0a, 0x40, 0xc4, 0x1e, 0x0e, 0xad, 0x0f, 0x9b, 0x01, 0x08, 0x93, 0xec, 0xf3,
+ 0x30, 0xe9, 0x97, 0x0a, 0xe9, 0x51, 0xaa, 0x00, 0xe3, 0xde, 0x8a, 0xe2, 0xbe, 0xcd, 0xfd, 0x40,
+ 0x1c, 0x4e, 0x84, 0x36, 0x0e, 0xdd, 0x04, 0x3e, 0x98, 0x67, 0x80, 0x7e, 0x3e, 0x16, 0xc4, 0xdf,
+ 0xa1, 0xa5, 0xe1, 0xbc, 0xfc, 0xca, 0x1a, 0xc8, 0xab, 0x17, 0x95, 0xfd, 0x5e, 0x2e, 0x58, 0x67,
+ 0xc5, 0x63, 0xd6, 0x06, 0x6f, 0x6f, 0x1e, 0x49, 0xdb, 0xff, 0xc6, 0xa0, 0x73, 0x5a, 0xcb, 0xb4,
+ 0xfd, 0x9f, 0x71, 0xf0, 0xb4, 0x3d, 0x35, 0x8d, 0x6a, 0x01, 0xdf, 0x39, 0x0e, 0xdf, 0xec, 0x00,
+ 0x78, 0xb5, 0xfe, 0x82, 0x55, 0xa5, 0x3b, 0x9d, 0xcd, 0xdf, 0x3f, 0x89, 0x41, 0xce, 0x66, 0xf3,
+ 0x27, 0x4b, 0xf9, 0x51, 0x1e, 0x4e, 0x37, 0xdb, 0x0d, 0xb1, 0x86, 0x43, 0xed, 0x66, 0xd5, 0x10,
+ 0x3d, 0x72, 0xd6, 0x99, 0x62, 0xe5, 0x9a, 0xed, 0xc6, 0x22, 0xc3, 0x29, 0xbb, 0xda, 0xad, 0xa3,
+ 0x37, 0x61, 0xdc, 0x50, 0x5b, 0x7e, 0xca, 0x9e, 0x4c, 0x24, 0x32, 0xd4, 0x96, 0x87, 0x71, 0xee,
+ 0xaf, 0xc4, 0xe1, 0x44, 0xa8, 0xfc, 0xd1, 0x3a, 0x3c, 0x19, 0xae, 0x14, 0xfe, 0xb1, 0x79, 0x36,
+ 0xa4, 0xbb, 0x1c, 0xc3, 0xb3, 0x23, 0x47, 0xff, 0x08, 0x0d, 0xe3, 0xf8, 0x6d, 0x1b, 0xa4, 0x1d,
+ 0x94, 0xf7, 0x58, 0x07, 0xe9, 0x4f, 0x26, 0xbc, 0x0b, 0x3b, 0x6c, 0xa0, 0x7e, 0x8e, 0x83, 0x9c,
+ 0x2f, 0x68, 0xb5, 0xc6, 0x27, 0xd3, 0xea, 0xed, 0xe3, 0x8a, 0x5b, 0x3d, 0x40, 0xef, 0xf8, 0x9c,
+ 0xda, 0x0b, 0xce, 0xce, 0xfd, 0x28, 0x07, 0x27, 0xdd, 0xa4, 0x6c, 0x56, 0xcb, 0x84, 0x71, 0x5c,
+ 0x03, 0x72, 0x0e, 0xc6, 0xec, 0xdd, 0x5d, 0x6b, 0xda, 0xc2, 0x94, 0x07, 0x59, 0x59, 0x96, 0x21,
+ 0xcd, 0xfd, 0xab, 0x18, 0x9c, 0xee, 0xd8, 0x26, 0x74, 0x0e, 0x32, 0x38, 0xb2, 0xb5, 0x99, 0x51,
+ 0xdd, 0x4e, 0x37, 0x94, 0xa6, 0xc5, 0x86, 0x20, 0x49, 0xfb, 0xbe, 0x12, 0xd3, 0x0d, 0x69, 0xdf,
+ 0x46, 0xf2, 0x68, 0x66, 0xc2, 0xa7, 0x99, 0x3f, 0xe0, 0xd3, 0x4c, 0x7a, 0x79, 0xb5, 0xf6, 0x88,
+ 0xba, 0xcf, 0xd5, 0x07, 0x91, 0xd4, 0x73, 0x30, 0x44, 0x3d, 0xff, 0x28, 0x11, 0xba, 0xe0, 0xc1,
+ 0xf4, 0xf4, 0x97, 0x38, 0x38, 0x17, 0x3e, 0xb1, 0xf1, 0x2a, 0xec, 0xfe, 0xb1, 0xcf, 0x6d, 0xc2,
+ 0x72, 0x7d, 0x81, 0x55, 0xad, 0x0b, 0x5e, 0xee, 0x73, 0x1c, 0x3c, 0x11, 0xc2, 0xec, 0xd1, 0x28,
+ 0xf5, 0x73, 0x30, 0x61, 0x2b, 0x75, 0x4b, 0x53, 0xb7, 0xa4, 0x2d, 0xa5, 0x6e, 0x2a, 0x19, 0x27,
+ 0x8c, 0x5b, 0x99, 0xeb, 0x76, 0x5e, 0xee, 0xeb, 0x31, 0x38, 0x1f, 0xad, 0xc9, 0xe8, 0x02, 0x8c,
+ 0x60, 0x0d, 0x77, 0x72, 0xe6, 0x08, 0xe7, 0xe1, 0x86, 0xd2, 0x74, 0xf0, 0x24, 0x88, 0xd2, 0x7e,
+ 0x40, 0x15, 0x86, 0x1b, 0xd2, 0xbe, 0x13, 0xb1, 0xab, 0xa6, 0xff, 0x44, 0x88, 0xa6, 0xdf, 0xff,
+ 0x63, 0xeb, 0xf7, 0x63, 0xd3, 0xfd, 0x85, 0xa4, 0x79, 0x38, 0x87, 0xdf, 0x84, 0x61, 0xb7, 0x5b,
+ 0x42, 0xf3, 0xe6, 0xe5, 0xb3, 0x28, 0x53, 0x62, 0x76, 0x9f, 0x36, 0xf8, 0x38, 0xd2, 0x67, 0xe3,
+ 0x90, 0xa0, 0x93, 0xde, 0x27, 0x21, 0xa3, 0x34, 0x0d, 0x79, 0x47, 0xd6, 0x1c, 0xd3, 0xed, 0x78,
+ 0xa9, 0x4f, 0x48, 0x33, 0x30, 0x45, 0x3b, 0x0b, 0xa9, 0xed, 0xba, 0x2a, 0x19, 0x8e, 0x89, 0x35,
+ 0x57, 0xea, 0x13, 0x80, 0x00, 0x29, 0xca, 0x39, 0x48, 0xeb, 0x86, 0xa6, 0x34, 0x77, 0x44, 0xf7,
+ 0xc5, 0xde, 0x14, 0x85, 0x5a, 0xc5, 0x6d, 0xa9, 0x6a, 0x5d, 0x96, 0xcc, 0xd9, 0x7d, 0x3f, 0x3b,
+ 0xa9, 0x9e, 0x66, 0x60, 0x6b, 0x2a, 0x6e, 0x5d, 0x42, 0x62, 0x88, 0x89, 0x6e, 0xb7, 0x45, 0x4a,
+ 0x7d, 0xc2, 0xb0, 0x45, 0x44, 0xd9, 0xbc, 0x04, 0x80, 0x21, 0x8c, 0xc3, 0x80, 0x7b, 0xf9, 0xdb,
+ 0x38, 0x68, 0xc9, 0x84, 0x7a, 0x6d, 0x7b, 0x51, 0x3a, 0x28, 0xf5, 0x09, 0x43, 0x18, 0x97, 0x12,
+ 0xce, 0x03, 0x90, 0x7b, 0x2a, 0x94, 0x90, 0x2e, 0xd7, 0x8c, 0xba, 0x08, 0x17, 0x25, 0x43, 0xc6,
+ 0x34, 0x18, 0x8d, 0xd2, 0x14, 0x60, 0xb4, 0x26, 0x1d, 0x88, 0xea, 0xb6, 0xf8, 0x40, 0x96, 0xf7,
+ 0x18, 0x69, 0x92, 0x1c, 0xa2, 0x9b, 0xf4, 0x90, 0x1e, 0xac, 0x6d, 0xbf, 0x29, 0xcb, 0x7b, 0xb8,
+ 0xc6, 0x35, 0x33, 0x41, 0x98, 0x58, 0x4b, 0xa2, 0xdf, 0x01, 0x43, 0xd6, 0x7d, 0x4f, 0xf4, 0x1a,
+ 0xb9, 0x96, 0xcc, 0x6e, 0xcd, 0x74, 0xde, 0x24, 0x58, 0x64, 0xd7, 0x65, 0x4a, 0x7d, 0x42, 0xd2,
+ 0xbc, 0x3a, 0xb3, 0x30, 0x0c, 0xe9, 0x96, 0xa4, 0xe9, 0x72, 0x8d, 0xbe, 0x8d, 0xc0, 0xff, 0x50,
+ 0x0c, 0x92, 0x26, 0x22, 0x7a, 0x92, 0xdc, 0x1b, 0x37, 0x75, 0xca, 0xdf, 0x48, 0x72, 0x95, 0x5c,
+ 0x46, 0x2f, 0x42, 0xca, 0xd1, 0x3a, 0xf6, 0xe6, 0x43, 0x48, 0xbb, 0xb0, 0x54, 0xd8, 0x5f, 0x34,
+ 0x03, 0xfd, 0xa4, 0xda, 0xf1, 0x4e, 0xc2, 0x17, 0x08, 0x0e, 0x2a, 0x02, 0xe9, 0x02, 0xf1, 0x3d,
+ 0xb5, 0x69, 0xde, 0xff, 0xbe, 0xd8, 0xa5, 0x9d, 0x84, 0xc7, 0xa6, 0xda, 0x94, 0x85, 0xa4, 0xc1,
+ 0xfe, 0xe5, 0x9e, 0x85, 0xa4, 0x09, 0x45, 0x4f, 0xc2, 0x30, 0xbd, 0x38, 0x26, 0x36, 0x94, 0x66,
+ 0xdb, 0x3c, 0xce, 0x95, 0x10, 0x32, 0x14, 0xba, 0x42, 0x81, 0xfc, 0x7f, 0x8d, 0x41, 0xd6, 0x7b,
+ 0x88, 0x19, 0xd5, 0xe1, 0x84, 0x7d, 0x5c, 0xcb, 0x70, 0x9d, 0x95, 0xd5, 0x99, 0xb8, 0x66, 0xbb,
+ 0xec, 0xd5, 0xb8, 0x4f, 0xd8, 0xea, 0xa5, 0x3e, 0x61, 0x4a, 0x09, 0xce, 0x42, 0x32, 0x4c, 0xb2,
+ 0x3b, 0x6b, 0xde, 0xa2, 0x68, 0x8f, 0x5f, 0xea, 0x78, 0x7f, 0xcd, 0x5f, 0xd0, 0x84, 0x16, 0x94,
+ 0x81, 0xee, 0xc3, 0x69, 0x37, 0x7f, 0x51, 0xd6, 0x34, 0x55, 0x13, 0x77, 0xa5, 0x66, 0xad, 0xae,
+ 0x34, 0x77, 0xba, 0xbc, 0xc5, 0xe1, 0x66, 0x57, 0xc4, 0xa4, 0x25, 0x46, 0x29, 0x9c, 0x34, 0xc2,
+ 0x33, 0x17, 0xb2, 0x30, 0xec, 0xce, 0xe6, 0xff, 0x56, 0x0c, 0x4e, 0x76, 0x60, 0x87, 0xbe, 0x13,
+ 0x52, 0xc6, 0xae, 0xa6, 0x3e, 0xa0, 0x15, 0x64, 0x02, 0x7f, 0xb5, 0xf7, 0x7a, 0xcd, 0x56, 0x30,
+ 0x17, 0x0a, 0xea, 0x13, 0xc0, 0xb0, 0x52, 0x68, 0x1f, 0xc6, 0xea, 0xb2, 0x74, 0x5f, 0x16, 0xdb,
+ 0x4d, 0xab, 0x6e, 0xb2, 0xb9, 0x95, 0x5b, 0x3c, 0x44, 0x49, 0xcb, 0x98, 0xdb, 0x86, 0x93, 0x59,
+ 0xa9, 0x4f, 0x40, 0x75, 0x1f, 0x34, 0x97, 0x06, 0xb0, 0x6b, 0x95, 0x1b, 0x07, 0xe4, 0xa7, 0xc4,
+ 0xa6, 0xa0, 0xa1, 0xd6, 0x64, 0xfe, 0xd7, 0x93, 0x30, 0xb5, 0xae, 0x29, 0x0d, 0x32, 0x51, 0x71,
+ 0x97, 0x8e, 0x04, 0x18, 0xd6, 0xe4, 0x56, 0x5d, 0xc2, 0xd3, 0x45, 0xe7, 0x41, 0x91, 0xa7, 0x42,
+ 0x95, 0x85, 0x20, 0x33, 0x7f, 0xc3, 0xb6, 0xf5, 0x33, 0x8c, 0x05, 0x53, 0xfb, 0x9b, 0xc0, 0x2e,
+ 0xd8, 0xb8, 0x8f, 0x81, 0x9c, 0xeb, 0x78, 0x0b, 0xcb, 0x62, 0x96, 0xd6, 0x1c, 0x69, 0xf4, 0x9d,
+ 0x30, 0x51, 0xdd, 0x95, 0xc8, 0x2d, 0x1c, 0x8d, 0xbc, 0x17, 0xe5, 0x3e, 0xe7, 0x11, 0x76, 0xfa,
+ 0xac, 0x60, 0xd2, 0xac, 0x48, 0xfa, 0x9e, 0xc5, 0x7a, 0xac, 0xea, 0x07, 0x23, 0x03, 0x4e, 0x57,
+ 0xb5, 0x83, 0x96, 0xa1, 0x8a, 0xa6, 0x20, 0xb6, 0xb7, 0xf7, 0xc5, 0xed, 0x96, 0xec, 0x3e, 0xea,
+ 0x11, 0xfa, 0x34, 0x13, 0xa1, 0x65, 0x62, 0xb9, 0xbe, 0xbd, 0x7f, 0xbd, 0x65, 0xcb, 0xe5, 0x44,
+ 0x35, 0x2c, 0x13, 0xb5, 0xe0, 0xe4, 0xb6, 0xb2, 0x2f, 0xd7, 0xe8, 0xda, 0x0f, 0x75, 0xe2, 0xf4,
+ 0x2c, 0xa3, 0xe3, 0xc8, 0xc7, 0x5c, 0xe8, 0xee, 0xdf, 0xbe, 0x5c, 0xc3, 0x81, 0xcb, 0x82, 0x49,
+ 0x67, 0x15, 0x39, 0xbd, 0x1d, 0x92, 0x87, 0xca, 0x90, 0xf5, 0x15, 0x33, 0xd0, 0xf9, 0x26, 0x9a,
+ 0x8f, 0xfb, 0xc8, 0x96, 0x87, 0xa9, 0x01, 0xa7, 0x4d, 0xa9, 0x3d, 0x50, 0x8c, 0x5d, 0xfb, 0xe5,
+ 0x15, 0xb3, 0x84, 0xc1, 0x8e, 0xc2, 0x63, 0x92, 0x79, 0x53, 0x31, 0x76, 0x4d, 0x83, 0x67, 0x0b,
+ 0x4f, 0x0b, 0xcb, 0x44, 0xb7, 0x21, 0x4b, 0xcc, 0x7c, 0x4b, 0xd2, 0x2c, 0x1d, 0x4b, 0x76, 0xbc,
+ 0x65, 0x8d, 0xcd, 0xf9, 0xba, 0xa4, 0xd9, 0x5a, 0x46, 0x1c, 0xbd, 0x0d, 0x41, 0x6f, 0x02, 0x62,
+ 0x5a, 0xb0, 0x2b, 0xe9, 0xbb, 0x26, 0xd3, 0xa1, 0x8e, 0x27, 0x82, 0x69, 0xd7, 0x97, 0x24, 0x7d,
+ 0xd7, 0x3e, 0xd7, 0x53, 0xf5, 0xc0, 0xc8, 0x0d, 0x2c, 0xec, 0x7a, 0xf5, 0x5d, 0x65, 0xdb, 0xaa,
+ 0x6c, 0xaa, 0xa3, 0xdc, 0xb1, 0x6b, 0x2a, 0x63, 0x74, 0x5b, 0xee, 0x35, 0x37, 0x08, 0x69, 0x70,
+ 0x92, 0x55, 0xb7, 0x26, 0x1b, 0xb2, 0xd6, 0x50, 0x9a, 0x64, 0xa3, 0xd4, 0xe4, 0x9f, 0x8e, 0xa0,
+ 0xb2, 0x8b, 0x4e, 0x42, 0xaf, 0xca, 0x06, 0x64, 0x06, 0x18, 0xe0, 0x6f, 0x70, 0x30, 0xec, 0x96,
+ 0x2c, 0xba, 0x03, 0x23, 0xa4, 0x57, 0x0c, 0x55, 0x64, 0xb7, 0xe7, 0xd8, 0xab, 0x34, 0xb3, 0x91,
+ 0x7a, 0xc6, 0x4a, 0x0a, 0x19, 0xcc, 0xa6, 0xa2, 0x16, 0x29, 0x13, 0xfe, 0xbb, 0x39, 0xea, 0x93,
+ 0x71, 0x1e, 0x3a, 0x01, 0x13, 0x95, 0xa5, 0x95, 0xa2, 0xb8, 0x9e, 0x17, 0x2a, 0x9e, 0x63, 0xff,
+ 0x49, 0xe8, 0xbf, 0x5b, 0xcc, 0x0b, 0x59, 0x0e, 0x0d, 0x41, 0x62, 0x65, 0x6d, 0xb5, 0x52, 0xca,
+ 0xc6, 0x50, 0x16, 0xd2, 0x8b, 0xf9, 0xbb, 0xe2, 0xda, 0x75, 0x91, 0x42, 0xe2, 0x68, 0x04, 0x52,
+ 0x0c, 0xf2, 0x66, 0xb1, 0x78, 0x2b, 0xdb, 0x8f, 0x51, 0xf0, 0x3f, 0x0c, 0x21, 0xf4, 0x09, 0x8c,
+ 0x52, 0x5a, 0xdb, 0x10, 0x30, 0x64, 0x31, 0x7f, 0x37, 0x3b, 0xc0, 0x97, 0x21, 0xeb, 0xed, 0x71,
+ 0xf4, 0x3a, 0x00, 0xeb, 0x87, 0xee, 0xf7, 0xc4, 0x29, 0x31, 0xb9, 0x27, 0x5e, 0x35, 0xff, 0xf2,
+ 0x5f, 0xe7, 0xe0, 0x44, 0x68, 0x7f, 0x1c, 0x99, 0x3d, 0x39, 0xd1, 0xd3, 0xd6, 0x34, 0x75, 0x47,
+ 0x32, 0x1c, 0x4f, 0x56, 0x45, 0x7d, 0x23, 0x65, 0xd4, 0xa2, 0x35, 0x41, 0xe8, 0x0a, 0x0c, 0x92,
+ 0xe7, 0x16, 0xf6, 0xcd, 0xcd, 0xe7, 0xae, 0xd7, 0xda, 0x19, 0x3a, 0xbf, 0x06, 0xc8, 0xef, 0x3c,
+ 0xd0, 0x55, 0x18, 0x6a, 0xca, 0x0f, 0x7a, 0xd9, 0xa8, 0x6b, 0xca, 0x0f, 0xc8, 0x3f, 0xfe, 0x24,
+ 0x9c, 0x08, 0xb5, 0x1f, 0xfc, 0x30, 0xa4, 0x9d, 0x7e, 0x85, 0xff, 0xbd, 0x18, 0x64, 0xb0, 0x53,
+ 0xd0, 0x2b, 0xea, 0xd2, 0x4e, 0x53, 0xd5, 0x64, 0x34, 0x0b, 0xc8, 0x72, 0x07, 0x3a, 0xd6, 0x57,
+ 0x7d, 0x4f, 0xa1, 0xf7, 0xac, 0x87, 0xc8, 0x40, 0xb6, 0xf2, 0x2a, 0x6a, 0x79, 0x4f, 0x69, 0xa1,
+ 0x03, 0x38, 0x59, 0x55, 0x1b, 0x0d, 0xb5, 0x29, 0xba, 0xc9, 0x14, 0xc2, 0x8e, 0xc5, 0xb3, 0x57,
+ 0x3a, 0xf8, 0x23, 0xab, 0xe8, 0xd9, 0x02, 0xe1, 0xe3, 0x82, 0x61, 0xd3, 0x5d, 0xb5, 0xc0, 0x66,
+ 0xc1, 0x34, 0x8f, 0xff, 0x0c, 0x07, 0x63, 0x01, 0x34, 0xe8, 0x3c, 0xf0, 0x85, 0xb5, 0x95, 0x95,
+ 0xb5, 0x55, 0xb1, 0x50, 0xca, 0x0b, 0x65, 0xb1, 0xb2, 0x26, 0x2e, 0xdd, 0x58, 0x5d, 0x13, 0xbc,
+ 0x6f, 0x33, 0xa5, 0x60, 0x70, 0x75, 0x63, 0xa5, 0x28, 0x2c, 0x15, 0xb2, 0x1c, 0x1a, 0x87, 0x6c,
+ 0x7e, 0x79, 0xbd, 0x94, 0x17, 0x37, 0xd6, 0xd7, 0x8b, 0x82, 0x58, 0xc8, 0x97, 0x8b, 0xd9, 0x98,
+ 0x0d, 0x5d, 0x5e, 0x7b, 0xd3, 0x84, 0x92, 0x61, 0xb2, 0xbe, 0xb1, 0x5a, 0xa8, 0x6c, 0xe4, 0x2b,
+ 0x4b, 0x6b, 0xab, 0xd9, 0x7e, 0x34, 0x0c, 0xf0, 0x66, 0x69, 0xa9, 0x52, 0x2c, 0xaf, 0xe7, 0x0b,
+ 0xc5, 0x6c, 0x62, 0x21, 0x0d, 0x60, 0x4b, 0x83, 0xff, 0x7d, 0x5c, 0xcf, 0x00, 0x17, 0xfb, 0x34,
+ 0x8c, 0x62, 0xd7, 0x4d, 0x1c, 0x8f, 0x99, 0xcd, 0x8e, 0xac, 0x67, 0x59, 0x86, 0x45, 0x86, 0x9e,
+ 0x80, 0xe1, 0x66, 0xbb, 0xb1, 0x25, 0x6b, 0x58, 0xb8, 0x38, 0x97, 0x5d, 0x74, 0x4f, 0x53, 0x68,
+ 0x45, 0xc5, 0x8c, 0xe9, 0x73, 0x01, 0xf7, 0x65, 0x4d, 0x97, 0x45, 0x55, 0xab, 0xc9, 0xf4, 0x1a,
+ 0x72, 0x12, 0x07, 0x0f, 0x04, 0xb8, 0x86, 0x61, 0xe8, 0x0e, 0x8c, 0x07, 0xf6, 0x55, 0x7f, 0xc7,
+ 0x3b, 0x13, 0x2e, 0x19, 0x0b, 0xa8, 0xea, 0xef, 0x8f, 0x2f, 0x71, 0x30, 0x1d, 0xe6, 0x83, 0xd1,
+ 0x02, 0xa4, 0xbc, 0x4b, 0xcf, 0x5d, 0x74, 0x9a, 0x1e, 0xa5, 0x81, 0xba, 0xbd, 0x0c, 0xbd, 0x00,
+ 0x29, 0xef, 0x62, 0x73, 0x34, 0x1e, 0x6d, 0x7b, 0xe1, 0xf9, 0x09, 0xff, 0xc2, 0x33, 0xc7, 0xb0,
+ 0xec, 0x95, 0x0f, 0xfe, 0xd3, 0x31, 0x18, 0xf1, 0xb6, 0xe0, 0x06, 0x0c, 0x9a, 0xfb, 0x28, 0x74,
+ 0x7d, 0xe8, 0x72, 0xb4, 0x00, 0x81, 0xa5, 0x05, 0x93, 0x3a, 0xf7, 0x0f, 0x39, 0x18, 0x60, 0x8b,
+ 0x3a, 0xb3, 0x10, 0x6f, 0x28, 0xcd, 0x48, 0x23, 0x1c, 0x23, 0x12, 0x7c, 0x69, 0x3f, 0xd2, 0xfe,
+ 0x3b, 0x46, 0x44, 0x4b, 0x30, 0xca, 0xe2, 0x05, 0xf2, 0xb2, 0x89, 0xbd, 0x80, 0xd0, 0x8d, 0x3a,
+ 0xeb, 0x20, 0xa3, 0x76, 0xe5, 0x97, 0xfa, 0x4d, 0x93, 0x1c, 0x14, 0xb8, 0x2d, 0x1e, 0xc6, 0x24,
+ 0x53, 0xb9, 0x3b, 0xec, 0xb2, 0xc3, 0x8c, 0xc6, 0x7a, 0x32, 0xa3, 0x48, 0x87, 0x11, 0x66, 0x86,
+ 0xa4, 0x7a, 0x6b, 0x57, 0xda, 0x92, 0x0d, 0xf6, 0x8c, 0x66, 0xa9, 0xd7, 0x00, 0x75, 0xf6, 0xfa,
+ 0xf6, 0x3e, 0xb5, 0x2a, 0xab, 0xe4, 0x50, 0x5a, 0x9e, 0xf1, 0xc3, 0xd1, 0x11, 0x2d, 0xc2, 0x84,
+ 0xa0, 0xa7, 0x80, 0xbd, 0x44, 0x68, 0x17, 0x9a, 0x60, 0x86, 0x72, 0x98, 0x66, 0x58, 0xa8, 0x93,
+ 0x90, 0xd0, 0xa4, 0x9a, 0xb2, 0x4f, 0x62, 0xcb, 0x04, 0x79, 0x55, 0x14, 0x27, 0xc3, 0x3c, 0x51,
+ 0xf2, 0xb0, 0x9e, 0x88, 0xff, 0x11, 0x0e, 0xa6, 0x42, 0x5a, 0x80, 0x66, 0xe0, 0xfc, 0xf5, 0xeb,
+ 0x6f, 0x89, 0xcc, 0x38, 0xae, 0xe6, 0x2b, 0x4b, 0x77, 0x8a, 0x22, 0xb1, 0x6f, 0x0b, 0xc5, 0x4a,
+ 0x27, 0xe3, 0x88, 0x9d, 0x7e, 0xf1, 0xad, 0xfc, 0x62, 0xb1, 0xb0, 0xb4, 0x92, 0x5f, 0xce, 0xc6,
+ 0xd0, 0x29, 0x98, 0xb6, 0xed, 0x24, 0x65, 0x21, 0x9a, 0xe8, 0x71, 0x34, 0x0a, 0x19, 0x37, 0xa8,
+ 0x7f, 0x01, 0x20, 0x69, 0xca, 0x88, 0xff, 0x84, 0x83, 0x21, 0x4b, 0x07, 0xd0, 0x12, 0x0c, 0x91,
+ 0xf8, 0x49, 0x31, 0x2f, 0xbd, 0x86, 0xcf, 0xb2, 0x2a, 0x26, 0x9e, 0x45, 0x4d, 0x56, 0x97, 0x4c,
+ 0x28, 0x66, 0xd5, 0x6e, 0x3e, 0xd0, 0xa4, 0x56, 0xcb, 0x9a, 0x6d, 0x86, 0xb1, 0xda, 0x30, 0xf1,
+ 0x5c, 0xac, 0x2c, 0x6a, 0xb4, 0x02, 0xa9, 0xbd, 0x86, 0x2e, 0x9a, 0xcc, 0x3a, 0x4f, 0xab, 0x6e,
+ 0x35, 0xf4, 0x37, 0xfd, 0xdc, 0x60, 0xcf, 0x02, 0x2f, 0x24, 0x61, 0x80, 0x1e, 0x7f, 0xe3, 0x2f,
+ 0x03, 0xf2, 0x37, 0x03, 0x4d, 0x39, 0x6f, 0x5e, 0xd1, 0x61, 0x41, 0x00, 0xfc, 0xd3, 0x80, 0xfc,
+ 0x55, 0x45, 0x13, 0xf6, 0xfb, 0x59, 0x69, 0x8a, 0x8d, 0xd3, 0xfc, 0x2e, 0x8c, 0x05, 0x54, 0x05,
+ 0x9b, 0x3c, 0xc6, 0x41, 0xf4, 0x50, 0x01, 0x83, 0x63, 0xac, 0xa7, 0x61, 0xc4, 0x1e, 0xc1, 0x8e,
+ 0xbb, 0x5e, 0x14, 0x33, 0x63, 0x0d, 0xd2, 0x55, 0x5c, 0xad, 0x6f, 0x71, 0x30, 0xe2, 0x89, 0xc7,
+ 0xd1, 0x65, 0xc8, 0x3a, 0xac, 0xb3, 0x58, 0x93, 0x0e, 0xd8, 0xa2, 0x10, 0xe5, 0x30, 0x6c, 0x1b,
+ 0xe1, 0x45, 0xe9, 0x40, 0xc7, 0xe8, 0x0e, 0x87, 0x40, 0xd1, 0x63, 0x0e, 0x74, 0xdb, 0xee, 0x13,
+ 0xf4, 0x43, 0x47, 0x58, 0x28, 0xef, 0x32, 0x4d, 0xfd, 0xd1, 0x4c, 0x13, 0x39, 0xec, 0x6b, 0xd9,
+ 0xa9, 0x24, 0x0c, 0x34, 0x64, 0x63, 0x57, 0xad, 0xf1, 0x0f, 0x63, 0x30, 0x15, 0xb2, 0x08, 0x85,
+ 0x0c, 0x18, 0xf1, 0xaf, 0x66, 0x75, 0x3a, 0xc3, 0x1d, 0xc2, 0x28, 0x04, 0x4e, 0xe5, 0xe2, 0x2d,
+ 0x22, 0xf7, 0x25, 0x0e, 0x26, 0x83, 0x09, 0x8e, 0xfc, 0x24, 0x6d, 0x13, 0xa6, 0x5b, 0xe6, 0x02,
+ 0x89, 0x67, 0xf5, 0x8c, 0x0d, 0xaf, 0xd9, 0xf0, 0xe3, 0xa1, 0x41, 0xeb, 0x2a, 0xb4, 0x09, 0x53,
+ 0xad, 0xe0, 0x5c, 0xfe, 0xcf, 0xc7, 0x61, 0x8c, 0x74, 0x9f, 0xa7, 0x1d, 0x2f, 0xc3, 0x00, 0x39,
+ 0xd0, 0x1b, 0xf1, 0xe8, 0x3e, 0x2d, 0x85, 0x91, 0xa0, 0x45, 0xf2, 0xea, 0x59, 0x4d, 0x71, 0x3c,
+ 0x19, 0x75, 0xbe, 0xe3, 0x92, 0x5f, 0xc1, 0xc4, 0x16, 0x6c, 0x42, 0xb4, 0xd7, 0x41, 0x14, 0xfd,
+ 0x87, 0x11, 0x45, 0xa9, 0x2f, 0x54, 0x0e, 0x9d, 0x17, 0x48, 0x13, 0xc7, 0xbc, 0x40, 0x1a, 0x30,
+ 0x81, 0xfd, 0x88, 0x83, 0x89, 0xc0, 0xe5, 0x4f, 0x24, 0xc2, 0x04, 0x7d, 0xbf, 0x2b, 0x58, 0xd1,
+ 0x67, 0x3a, 0x75, 0x8c, 0x9b, 0x97, 0x30, 0xbe, 0xed, 0x07, 0xea, 0xe8, 0x2e, 0x8c, 0xb1, 0xd5,
+ 0x5a, 0xbd, 0xdd, 0x6a, 0x69, 0xb2, 0xae, 0xb3, 0xa5, 0xda, 0x4e, 0xaf, 0xf0, 0xd2, 0xba, 0x96,
+ 0x6d, 0x02, 0x01, 0x69, 0x5e, 0x90, 0xce, 0xdf, 0x85, 0x51, 0x1f, 0xa2, 0x5b, 0x3b, 0xb8, 0x43,
+ 0x6a, 0x07, 0xff, 0xf9, 0x04, 0x8c, 0x78, 0xb2, 0x51, 0x05, 0x52, 0xf2, 0xbe, 0xdd, 0x82, 0xce,
+ 0xcb, 0xbf, 0x1e, 0xe2, 0xd9, 0xa2, 0x4d, 0x29, 0x38, 0xd9, 0xe4, 0xbe, 0x48, 0x9f, 0x22, 0x63,
+ 0x65, 0x1c, 0xe1, 0x82, 0xc4, 0x4d, 0x48, 0xaa, 0x2d, 0x59, 0x93, 0x0c, 0xf6, 0x56, 0xd1, 0x70,
+ 0x87, 0xb5, 0xcd, 0x3a, 0xe9, 0x1c, 0xa9, 0xbe, 0xc6, 0x08, 0xd8, 0x21, 0x77, 0x93, 0xde, 0xde,
+ 0x3f, 0xeb, 0x8f, 0xbc, 0x7f, 0x96, 0x7b, 0x07, 0xc0, 0x6a, 0x87, 0x8e, 0xd6, 0x01, 0x2c, 0x69,
+ 0x9a, 0xca, 0xf4, 0x4c, 0x44, 0x59, 0xd9, 0x3d, 0xe2, 0xe0, 0x91, 0xfb, 0x4c, 0x0c, 0x52, 0x0e,
+ 0x29, 0xa2, 0x06, 0x76, 0x37, 0x3b, 0xe4, 0x98, 0xb6, 0xd5, 0x6e, 0xba, 0x04, 0xb3, 0xd0, 0x7b,
+ 0x9f, 0xcc, 0x2e, 0x53, 0x56, 0xa6, 0x40, 0x84, 0x91, 0xba, 0x1b, 0x80, 0xca, 0xae, 0x06, 0xd1,
+ 0xce, 0x7f, 0xb6, 0xd7, 0x06, 0xe1, 0x61, 0xeb, 0x60, 0xc3, 0xbf, 0x02, 0x23, 0x9e, 0x82, 0xd1,
+ 0xe3, 0x70, 0x6a, 0x79, 0xed, 0xc6, 0x52, 0x21, 0xbf, 0x2c, 0xae, 0xad, 0x17, 0x85, 0x7c, 0x65,
+ 0x4d, 0xf0, 0x04, 0x72, 0x83, 0x10, 0xcf, 0xaf, 0x2e, 0x66, 0x39, 0x6b, 0x0b, 0xec, 0xef, 0x71,
+ 0x30, 0x19, 0xfc, 0x42, 0x09, 0x9e, 0x91, 0x3a, 0x56, 0xca, 0x5d, 0x17, 0xef, 0xb3, 0xce, 0x25,
+ 0x74, 0x72, 0xeb, 0x7e, 0x07, 0xa6, 0x3d, 0x3b, 0x1e, 0x7a, 0xbb, 0xd1, 0x90, 0x34, 0xc5, 0xba,
+ 0xc1, 0x70, 0x29, 0xd2, 0x52, 0x7f, 0x99, 0x50, 0x1d, 0x08, 0x53, 0x46, 0x00, 0x58, 0x91, 0x75,
+ 0xfe, 0x33, 0x03, 0x30, 0x11, 0x48, 0x72, 0xc4, 0x17, 0x25, 0xac, 0x4b, 0x25, 0xb1, 0x5e, 0x2e,
+ 0x95, 0xdc, 0xf1, 0x9a, 0x4b, 0xd6, 0xbb, 0x3d, 0xda, 0x7f, 0xc1, 0xc3, 0x25, 0xdc, 0xb4, 0x26,
+ 0x8e, 0xc9, 0xb4, 0xde, 0xb6, 0xde, 0xe0, 0x34, 0x4d, 0x2b, 0x5b, 0xe8, 0x8e, 0x6e, 0x56, 0x87,
+ 0xdd, 0x66, 0x15, 0x55, 0x60, 0x90, 0x6e, 0xaa, 0x9b, 0xa7, 0xb3, 0xae, 0xf5, 0xd2, 0xe3, 0xb3,
+ 0x66, 0xcf, 0xd3, 0x67, 0x2f, 0x4c, 0x56, 0xc1, 0x5a, 0x38, 0x18, 0xac, 0x85, 0xb9, 0x1f, 0xe7,
+ 0x20, 0xe3, 0xe2, 0x63, 0xef, 0xcc, 0x73, 0x8e, 0x9d, 0x79, 0x74, 0x17, 0xfa, 0xad, 0x1b, 0x38,
+ 0xc3, 0x11, 0x37, 0xa1, 0xcc, 0x7a, 0x7a, 0xc4, 0x4b, 0x8a, 0x29, 0xa8, 0x35, 0x59, 0x20, 0x2c,
+ 0xd1, 0x34, 0x0c, 0xd6, 0xe8, 0x21, 0x07, 0xf6, 0x6a, 0x80, 0x99, 0xe4, 0xdf, 0x81, 0xe9, 0x30,
+ 0x5a, 0x3c, 0x19, 0xab, 0x08, 0xf9, 0xd5, 0xf2, 0xf5, 0x35, 0x61, 0x85, 0xac, 0x23, 0x89, 0x42,
+ 0xb1, 0xbc, 0xb1, 0x5c, 0x11, 0x0b, 0x6b, 0x8b, 0x01, 0x2b, 0x55, 0xe5, 0x8d, 0x42, 0xa1, 0x58,
+ 0x2e, 0xd3, 0x15, 0xdc, 0xa2, 0x20, 0xac, 0x09, 0xd9, 0x18, 0xaf, 0x42, 0xb2, 0x5c, 0xdd, 0x95,
+ 0x6b, 0xed, 0xba, 0x8c, 0xee, 0x42, 0x4e, 0x93, 0xab, 0x6d, 0x4d, 0x23, 0xa7, 0x76, 0x5a, 0xb2,
+ 0xa6, 0xa8, 0x35, 0xd1, 0xfc, 0x1a, 0x09, 0x1b, 0x1c, 0x27, 0x7c, 0xbb, 0xfc, 0x8b, 0x0c, 0xa1,
+ 0xd4, 0x27, 0x4c, 0xdb, 0xe4, 0xeb, 0x84, 0xda, 0xcc, 0xc3, 0xe1, 0x2f, 0x7d, 0x3d, 0x85, 0x4f,
+ 0xc2, 0xc0, 0x8a, 0xd4, 0x6c, 0x4b, 0x75, 0xfe, 0x07, 0x12, 0x30, 0xe2, 0x7d, 0x37, 0xc4, 0x37,
+ 0x8b, 0x89, 0x47, 0x7f, 0x44, 0xc2, 0xf3, 0xea, 0x43, 0xdc, 0xf7, 0xea, 0x03, 0x7a, 0xc3, 0xfd,
+ 0x20, 0x74, 0x7f, 0xb7, 0x73, 0x0b, 0xb4, 0x02, 0xce, 0x57, 0xa1, 0xdf, 0x70, 0xbf, 0x93, 0x99,
+ 0x88, 0xc8, 0xc1, 0xf1, 0x58, 0xa6, 0xff, 0x51, 0xa5, 0x81, 0x43, 0x3f, 0xaa, 0x74, 0xed, 0x8b,
+ 0xb1, 0x8f, 0xf3, 0xff, 0x22, 0x06, 0x7c, 0xf8, 0xdb, 0xc6, 0x96, 0x64, 0xdf, 0x50, 0xb5, 0x1d,
+ 0xa9, 0xa9, 0xbc, 0x67, 0xbe, 0x66, 0xec, 0x4c, 0x7e, 0x30, 0xe7, 0x79, 0x45, 0x49, 0x9f, 0x7b,
+ 0xdf, 0xfb, 0x32, 0xcc, 0x07, 0xe8, 0xc5, 0x80, 0xe7, 0x91, 0xa3, 0xd0, 0x6d, 0x74, 0x2c, 0x39,
+ 0xf0, 0x81, 0xe5, 0x28, 0x6c, 0x6f, 0x45, 0x7d, 0xad, 0x39, 0x02, 0x33, 0xfe, 0xa7, 0x13, 0x80,
+ 0x16, 0x7d, 0x6f, 0x85, 0xfd, 0x3f, 0xa0, 0x8e, 0x81, 0xef, 0x18, 0x0e, 0x1c, 0xf1, 0x1d, 0xc3,
+ 0x6b, 0xff, 0x21, 0xf6, 0x71, 0xfe, 0xab, 0x31, 0x78, 0x32, 0xe8, 0x5d, 0x6f, 0xbf, 0x94, 0xaf,
+ 0x77, 0x54, 0x10, 0xff, 0xbb, 0x81, 0xfa, 0xdc, 0xfb, 0x01, 0x8f, 0x0d, 0x7e, 0x80, 0x5e, 0x09,
+ 0xd0, 0x88, 0xe8, 0xd4, 0xdf, 0xd1, 0xbb, 0x9a, 0x46, 0x67, 0x7e, 0x3b, 0xaa, 0xb2, 0x46, 0x66,
+ 0xc9, 0xbf, 0x0b, 0x09, 0x7a, 0x56, 0xe2, 0x92, 0xed, 0x3c, 0xa8, 0x8d, 0x46, 0x66, 0xc7, 0x69,
+ 0xad, 0x2a, 0xb9, 0xeb, 0xd9, 0xd6, 0x2d, 0x87, 0x82, 0xae, 0xd1, 0x83, 0x57, 0x44, 0x1d, 0xcc,
+ 0x59, 0x51, 0xc7, 0x87, 0x7e, 0x6d, 0x6c, 0xfe, 0xe7, 0x06, 0x01, 0xec, 0x27, 0xe6, 0x0f, 0xfb,
+ 0xd8, 0x4f, 0xf7, 0x81, 0x71, 0x13, 0x52, 0xe6, 0x10, 0xbd, 0xa7, 0x6e, 0xb1, 0x81, 0x11, 0xf5,
+ 0xf9, 0x28, 0x1c, 0xf1, 0x2a, 0x16, 0x0c, 0x15, 0x21, 0xc9, 0x5e, 0xc2, 0x37, 0xe3, 0xa0, 0xb0,
+ 0x59, 0x8a, 0xdd, 0xb2, 0x59, 0xf3, 0x11, 0x7d, 0x8b, 0x14, 0x5d, 0x85, 0x01, 0x72, 0xd8, 0xc5,
+ 0x3c, 0xc0, 0x18, 0x36, 0x43, 0x21, 0x5d, 0x42, 0x87, 0x19, 0x23, 0xf0, 0x0e, 0xf3, 0xc1, 0x23,
+ 0x0f, 0xf3, 0x64, 0xef, 0xc3, 0xbc, 0x00, 0x99, 0xba, 0xa4, 0x1b, 0xa2, 0xd6, 0x6e, 0x52, 0x1e,
+ 0x43, 0xd1, 0x78, 0xa4, 0x30, 0x95, 0xd0, 0x6e, 0x56, 0xe8, 0x21, 0xb0, 0x01, 0xfa, 0x81, 0xb0,
+ 0x69, 0x20, 0x21, 0xd0, 0xc5, 0xee, 0x82, 0xa4, 0xda, 0xc7, 0x96, 0x53, 0x28, 0x71, 0xee, 0x07,
+ 0x39, 0x18, 0x34, 0x55, 0xe8, 0x55, 0x48, 0xea, 0x2c, 0xfc, 0xe8, 0x12, 0x7d, 0x9b, 0x51, 0x4a,
+ 0xa9, 0x4f, 0xb0, 0x48, 0xd0, 0x4b, 0x30, 0xd0, 0x20, 0xc1, 0x04, 0x0b, 0xc0, 0x4f, 0x87, 0x7e,
+ 0xf1, 0x0a, 0x23, 0x95, 0xfa, 0x04, 0x86, 0xbe, 0x30, 0x04, 0x83, 0xac, 0x6b, 0xf9, 0x12, 0x0c,
+ 0xd0, 0x5a, 0xa2, 0x49, 0x40, 0xe5, 0x4a, 0xbe, 0xb2, 0x51, 0xf6, 0xc7, 0x4e, 0xa5, 0x62, 0x7e,
+ 0xb9, 0x52, 0xba, 0x9b, 0xe5, 0x10, 0xc0, 0xc0, 0x7a, 0x7e, 0xa3, 0x5c, 0x5c, 0xa4, 0x1f, 0x5c,
+ 0x29, 0xe4, 0x57, 0x0b, 0xc5, 0xe5, 0xe5, 0xe2, 0x62, 0x36, 0x7e, 0xed, 0x47, 0xb8, 0x8f, 0xf3,
+ 0x9f, 0xe6, 0xba, 0x7c, 0x98, 0x01, 0x5d, 0x0a, 0x30, 0x05, 0xf7, 0xac, 0x6c, 0x7d, 0xee, 0xfd,
+ 0x7b, 0xea, 0x96, 0xc8, 0x2a, 0xf7, 0x01, 0xca, 0x47, 0x35, 0x1c, 0xa1, 0x2c, 0x16, 0x12, 0x10,
+ 0xbf, 0xa7, 0x6e, 0xf1, 0x9f, 0x1a, 0x84, 0x01, 0xfa, 0x86, 0x12, 0xba, 0x0d, 0x19, 0x5d, 0xba,
+ 0xef, 0x78, 0x5c, 0x99, 0xeb, 0xb8, 0x38, 0x4d, 0xa9, 0x66, 0xcb, 0xd2, 0x7d, 0xeb, 0xdd, 0xe5,
+ 0x52, 0x9f, 0x90, 0xd6, 0x1d, 0x69, 0x54, 0x82, 0xc1, 0x56, 0x7b, 0x4b, 0xd4, 0xdb, 0x5b, 0x5d,
+ 0x5e, 0xb6, 0x64, 0xcc, 0xd6, 0xdb, 0x5b, 0x75, 0x45, 0xdf, 0xad, 0xa8, 0xeb, 0xed, 0xad, 0x72,
+ 0x7b, 0x0b, 0x77, 0x4d, 0x8b, 0xfc, 0x43, 0x7b, 0x30, 0xd5, 0xa2, 0x99, 0x6c, 0x36, 0x78, 0x20,
+ 0x1a, 0xaa, 0x58, 0xd5, 0xab, 0xd5, 0x2e, 0x2b, 0x20, 0x6e, 0xce, 0x2c, 0xf2, 0xae, 0xa8, 0x05,
+ 0xbd, 0x5a, 0x2d, 0xf5, 0x09, 0xe3, 0xad, 0x00, 0x38, 0xfa, 0x11, 0x0e, 0xce, 0x9b, 0xa5, 0xd9,
+ 0x9f, 0x53, 0x51, 0x45, 0xf2, 0x5c, 0xa6, 0x48, 0xbe, 0x38, 0x53, 0x95, 0x0c, 0xa9, 0xae, 0x9a,
+ 0x27, 0x87, 0x5e, 0x8f, 0x54, 0xb8, 0x29, 0x96, 0x8a, 0x5a, 0xc0, 0x8c, 0x16, 0x25, 0x43, 0x2a,
+ 0x50, 0x36, 0xa5, 0x3e, 0xe1, 0x6c, 0xab, 0x1b, 0x12, 0x6a, 0xc0, 0x14, 0xf9, 0x4e, 0x86, 0x6a,
+ 0x28, 0xdb, 0x0a, 0x7b, 0x51, 0x4c, 0x6e, 0x10, 0x13, 0x4f, 0x07, 0xff, 0x73, 0x9d, 0xab, 0x71,
+ 0x53, 0xdd, 0x5a, 0x75, 0xd0, 0x16, 0x09, 0x69, 0xa9, 0x4f, 0x98, 0xb8, 0x17, 0x94, 0x81, 0xee,
+ 0xc1, 0xa4, 0x29, 0x04, 0x43, 0x15, 0x75, 0x43, 0xaa, 0xee, 0xd5, 0x34, 0xe5, 0xbe, 0xac, 0x31,
+ 0x33, 0x31, 0x1f, 0xb1, 0x2f, 0xcb, 0x36, 0xa5, 0x43, 0xe2, 0x2e, 0x78, 0x4e, 0x84, 0xb4, 0x53,
+ 0x91, 0xd0, 0x9a, 0xf5, 0xb8, 0xa5, 0xeb, 0x98, 0xdc, 0x4c, 0xf4, 0xc7, 0x2d, 0xcd, 0xf7, 0x2c,
+ 0xd9, 0x5b, 0x37, 0x17, 0x60, 0xc4, 0xa3, 0x5c, 0x78, 0x3e, 0x67, 0xa8, 0x2d, 0xf6, 0x22, 0xc1,
+ 0x90, 0x40, 0x13, 0xb9, 0x49, 0x18, 0x0f, 0xd2, 0x95, 0xdc, 0x39, 0x38, 0xdb, 0xb5, 0x1b, 0x73,
+ 0x53, 0x30, 0x11, 0x28, 0x64, 0x07, 0x57, 0x57, 0xbb, 0xf1, 0x0c, 0x88, 0xbe, 0x5c, 0xc6, 0xff,
+ 0x2f, 0x0e, 0x4e, 0xd1, 0x6f, 0xa2, 0x78, 0x9f, 0x53, 0x64, 0x8f, 0xd0, 0x2d, 0x78, 0x5e, 0x70,
+ 0x9d, 0x21, 0x6f, 0x06, 0x3f, 0x81, 0x22, 0x84, 0xf9, 0xd6, 0xdb, 0xad, 0x77, 0x20, 0xeb, 0x7b,
+ 0xdb, 0x31, 0xd6, 0xcb, 0xdb, 0x8e, 0x6c, 0xaf, 0xc0, 0x13, 0x3c, 0xa3, 0x33, 0x90, 0xb2, 0x9e,
+ 0x61, 0xb5, 0xdf, 0xb8, 0x33, 0x41, 0x4b, 0x35, 0xef, 0x23, 0x78, 0xfd, 0xbe, 0x47, 0xf0, 0xfe,
+ 0x13, 0x07, 0xa7, 0x36, 0x88, 0x67, 0x0a, 0x69, 0xfe, 0x6b, 0xae, 0xa0, 0x9b, 0x35, 0x3e, 0xca,
+ 0x1c, 0x87, 0x85, 0x20, 0xb7, 0x8f, 0xda, 0x74, 0x7f, 0xab, 0xed, 0xcf, 0x23, 0x90, 0x73, 0x13,
+ 0xf1, 0x10, 0xe7, 0x49, 0x56, 0x52, 0x56, 0x24, 0x7d, 0xcf, 0xf4, 0xbd, 0xf8, 0x3f, 0xff, 0x1d,
+ 0x70, 0xe2, 0x86, 0x6c, 0x3c, 0x9a, 0xc6, 0xf2, 0xbf, 0xc5, 0xc1, 0x49, 0xfa, 0xa6, 0xa0, 0x7b,
+ 0x92, 0x73, 0x9c, 0xba, 0x74, 0x1a, 0xa0, 0x25, 0xed, 0xc8, 0xa2, 0xa1, 0xee, 0xb1, 0x47, 0xe3,
+ 0x87, 0x84, 0x21, 0x0c, 0xa9, 0x60, 0x00, 0x3a, 0x09, 0x24, 0x61, 0x9f, 0x86, 0x48, 0x08, 0x49,
+ 0x0c, 0x20, 0x17, 0x40, 0x4e, 0x40, 0x92, 0x1c, 0x23, 0x11, 0xb7, 0x0e, 0x98, 0x2e, 0x0c, 0x92,
+ 0xf4, 0xc2, 0x41, 0xf7, 0x57, 0x7a, 0x7f, 0x82, 0x83, 0x53, 0xc1, 0x6d, 0x63, 0xcf, 0x26, 0x96,
+ 0x61, 0xd4, 0xdb, 0xd3, 0xe6, 0xd2, 0x6f, 0xd4, 0xae, 0xce, 0x7a, 0x67, 0x87, 0xe8, 0x3c, 0x8c,
+ 0x34, 0xe5, 0x7d, 0x43, 0xf4, 0x35, 0x39, 0x83, 0xc1, 0xeb, 0x66, 0xb3, 0xf9, 0x77, 0xe0, 0xd4,
+ 0xa2, 0x5c, 0x97, 0x1f, 0x95, 0x1a, 0xf3, 0xff, 0x99, 0x83, 0x29, 0x6a, 0x26, 0x1c, 0x5f, 0x75,
+ 0x7a, 0x14, 0xaf, 0x8a, 0xdf, 0x80, 0x94, 0x23, 0x5e, 0x60, 0x43, 0xe5, 0x6c, 0xd7, 0xd8, 0x8e,
+ 0xed, 0xff, 0xda, 0x71, 0x07, 0xd6, 0x13, 0xf3, 0x63, 0x55, 0x96, 0x69, 0x18, 0x62, 0x90, 0x28,
+ 0x96, 0xe1, 0x0e, 0x9c, 0xc0, 0x1e, 0xe5, 0x7e, 0x60, 0x93, 0xaf, 0xba, 0xc4, 0xf9, 0x24, 0x69,
+ 0x70, 0xd7, 0x8f, 0x60, 0x51, 0x49, 0xfe, 0x3b, 0x0e, 0xa6, 0xa8, 0xc5, 0x39, 0x4e, 0xb6, 0x68,
+ 0xe1, 0x70, 0x72, 0x73, 0x89, 0xec, 0x48, 0x86, 0xe5, 0x36, 0x8c, 0xdf, 0x90, 0x8d, 0x63, 0x15,
+ 0xd5, 0xcf, 0xc6, 0x60, 0x8c, 0x2a, 0x1d, 0xfb, 0xfe, 0xd6, 0xa3, 0x50, 0x38, 0xcf, 0xf4, 0x2e,
+ 0x76, 0x94, 0xe9, 0xdd, 0x12, 0x24, 0x35, 0x45, 0xdf, 0x23, 0x8c, 0xe2, 0x9d, 0x6f, 0x63, 0x04,
+ 0x3d, 0x8a, 0x5a, 0xea, 0x13, 0x06, 0x31, 0x3d, 0x66, 0x35, 0x01, 0x03, 0xb8, 0x3f, 0x2d, 0xd5,
+ 0x4c, 0xdc, 0x53, 0xb7, 0xfc, 0x6a, 0xeb, 0x33, 0x53, 0x66, 0x7c, 0xfd, 0xdf, 0x39, 0x98, 0xc4,
+ 0xd6, 0xca, 0x96, 0xa9, 0xfe, 0x48, 0xa4, 0xf7, 0x88, 0xac, 0xb1, 0xfd, 0xa8, 0x6d, 0xa2, 0xd3,
+ 0xa3, 0xb6, 0xfe, 0xa7, 0xf2, 0xbf, 0x8f, 0x83, 0x29, 0x5f, 0xbb, 0x99, 0x81, 0x5e, 0x84, 0xb4,
+ 0x63, 0x88, 0x98, 0xb6, 0x39, 0xc2, 0x18, 0x49, 0x39, 0xa6, 0x33, 0x91, 0x2d, 0x72, 0x05, 0xa6,
+ 0xa8, 0x45, 0x3e, 0xd6, 0x21, 0xf1, 0x57, 0x63, 0x90, 0xf5, 0x2a, 0x21, 0xba, 0x05, 0xc3, 0xec,
+ 0x2b, 0xde, 0xee, 0xb0, 0xf5, 0x89, 0xd0, 0x17, 0xb7, 0x9c, 0x01, 0x6b, 0x46, 0x77, 0xbd, 0x0e,
+ 0x7f, 0xac, 0xef, 0xec, 0x87, 0xbe, 0x97, 0x1f, 0x0f, 0x7f, 0x2f, 0xdf, 0xf1, 0x06, 0x6f, 0x7f,
+ 0x4f, 0x6f, 0xf0, 0x7e, 0x34, 0x00, 0x03, 0xd4, 0x50, 0x04, 0x2e, 0x06, 0xbd, 0xc0, 0xbe, 0x73,
+ 0xd5, 0xf9, 0x33, 0xc4, 0x94, 0x81, 0xe3, 0x7b, 0xa9, 0xaf, 0x90, 0x8f, 0x45, 0x19, 0x32, 0xdb,
+ 0x55, 0x3e, 0xdf, 0x91, 0x0e, 0x6b, 0x0d, 0x9e, 0xbf, 0xcb, 0x02, 0x25, 0x42, 0x6f, 0x41, 0x9a,
+ 0x58, 0x04, 0x73, 0x4d, 0xac, 0xbf, 0xf3, 0x84, 0xa9, 0xc3, 0x85, 0xd3, 0x52, 0x9f, 0x90, 0xd2,
+ 0x1c, 0x6f, 0x9d, 0x6d, 0x82, 0x19, 0x18, 0x5a, 0xcc, 0x3b, 0x5f, 0x27, 0x09, 0x7b, 0xa6, 0xbd,
+ 0xd4, 0x27, 0x98, 0x3d, 0x6e, 0xf2, 0x3e, 0xd2, 0xb7, 0x2a, 0xaf, 0x02, 0x90, 0x0f, 0x6a, 0x45,
+ 0x5c, 0x60, 0x12, 0x86, 0x08, 0x36, 0x21, 0x7d, 0x01, 0x92, 0x72, 0xb3, 0x16, 0x71, 0x5d, 0x49,
+ 0x18, 0x94, 0x9b, 0x35, 0x42, 0x76, 0x11, 0xb2, 0x8e, 0x81, 0x4d, 0x15, 0x0c, 0x48, 0xcf, 0x0f,
+ 0xdb, 0x23, 0x97, 0xe8, 0xd6, 0xf3, 0xd6, 0xc2, 0x59, 0xaa, 0xfb, 0xc2, 0x99, 0xb9, 0x66, 0xc6,
+ 0xab, 0x90, 0x34, 0xfb, 0x15, 0x9d, 0x80, 0x89, 0x9b, 0x6b, 0x0b, 0x62, 0xb9, 0x92, 0xaf, 0x04,
+ 0xec, 0x6a, 0xad, 0x17, 0x57, 0x17, 0x97, 0x56, 0x6f, 0x64, 0x39, 0x9c, 0x10, 0x36, 0x56, 0x57,
+ 0x71, 0x22, 0x86, 0x92, 0xd0, 0xbf, 0xb8, 0xb6, 0x5a, 0xcc, 0xc6, 0x51, 0x1a, 0x92, 0x74, 0x91,
+ 0xa6, 0xb8, 0x98, 0xed, 0x47, 0x00, 0x03, 0xd7, 0xf3, 0x4b, 0xf8, 0x7f, 0x02, 0xff, 0xcf, 0x17,
+ 0x2a, 0x4b, 0x77, 0x8a, 0xd9, 0x81, 0x6b, 0x7f, 0xe6, 0xe3, 0xfc, 0x77, 0x75, 0xf8, 0x0e, 0x25,
+ 0x7a, 0x22, 0x68, 0x6d, 0x99, 0x64, 0xe9, 0x73, 0xef, 0xd7, 0xea, 0x2d, 0xec, 0x80, 0x3e, 0x40,
+ 0x57, 0x23, 0x2f, 0xf3, 0x7a, 0x49, 0x17, 0x86, 0xac, 0x55, 0x5c, 0x7e, 0x09, 0xb2, 0x37, 0x64,
+ 0xc3, 0xed, 0x80, 0x5f, 0x70, 0x19, 0xb0, 0xb3, 0xc4, 0x80, 0x75, 0xfc, 0x70, 0x26, 0x35, 0x5e,
+ 0x7f, 0x27, 0x06, 0x08, 0x1b, 0x67, 0x0a, 0x0c, 0x70, 0x48, 0xfd, 0x47, 0x77, 0x48, 0xb6, 0xe7,
+ 0xe0, 0x5c, 0x9e, 0xc3, 0xe5, 0x89, 0x62, 0x1e, 0x4f, 0xe4, 0xf6, 0x62, 0x71, 0xaf, 0x17, 0x33,
+ 0x2d, 0x47, 0xa2, 0x37, 0xcb, 0xe1, 0xf4, 0x6f, 0x03, 0x1d, 0x67, 0x1b, 0x7e, 0x3f, 0xd6, 0x82,
+ 0x31, 0x97, 0xa4, 0x98, 0x0b, 0x7b, 0x16, 0xfa, 0xef, 0xa9, 0x5b, 0xa6, 0xeb, 0x3a, 0xdd, 0xb1,
+ 0x26, 0x02, 0x41, 0x8d, 0xec, 0xaf, 0x96, 0x61, 0xac, 0x20, 0x35, 0xab, 0x72, 0xfd, 0x58, 0xba,
+ 0x7a, 0x19, 0xc6, 0xae, 0x2b, 0x4d, 0x45, 0xdf, 0x3d, 0x2e, 0x6e, 0xd4, 0x97, 0x1e, 0x0b, 0xb7,
+ 0xbf, 0x18, 0x83, 0x33, 0x2c, 0xac, 0xf4, 0xed, 0x6f, 0x98, 0xac, 0x8b, 0x9e, 0x20, 0xe9, 0x32,
+ 0x61, 0x7e, 0x01, 0x45, 0xdb, 0x44, 0xb2, 0xb4, 0x51, 0x84, 0xb1, 0x80, 0xed, 0x92, 0x2e, 0x67,
+ 0x79, 0xfd, 0xfc, 0xe8, 0xec, 0x06, 0xf9, 0xb7, 0x63, 0x8e, 0x61, 0x05, 0xe4, 0x7f, 0x73, 0x70,
+ 0x86, 0xce, 0x47, 0xc2, 0xa5, 0x91, 0x77, 0x09, 0x9a, 0xc9, 0x22, 0xe2, 0x86, 0x1a, 0xf3, 0xbe,
+ 0x9b, 0xc7, 0x23, 0x89, 0x40, 0x21, 0x1c, 0x69, 0xde, 0x22, 0xc1, 0x29, 0x6c, 0xdf, 0x1e, 0x61,
+ 0xdb, 0xf9, 0x7f, 0xcf, 0xc1, 0x63, 0x64, 0x34, 0xfb, 0xb7, 0xd3, 0x8e, 0x59, 0xdf, 0xbe, 0x5d,
+ 0x8b, 0x23, 0x7f, 0x9b, 0x83, 0x33, 0xa1, 0x2d, 0x64, 0xb6, 0xeb, 0x6d, 0x18, 0x0f, 0xd0, 0x00,
+ 0xd3, 0x96, 0xf5, 0xa0, 0x02, 0x63, 0x01, 0xdb, 0x92, 0x91, 0xcd, 0x5c, 0x0d, 0xce, 0x30, 0x53,
+ 0xf2, 0x28, 0x7b, 0xfc, 0x6f, 0xc6, 0xe0, 0xe4, 0xb2, 0xa4, 0xed, 0xc8, 0x05, 0x72, 0x6d, 0x62,
+ 0x51, 0x21, 0x21, 0xaa, 0xa4, 0x99, 0x4f, 0x06, 0x94, 0x20, 0xc5, 0xd6, 0x99, 0xc9, 0x47, 0x50,
+ 0xb9, 0xce, 0x17, 0x50, 0xb1, 0x1b, 0x64, 0x31, 0xfb, 0xba, 0x64, 0xec, 0x0a, 0x40, 0x69, 0xc9,
+ 0xb7, 0x52, 0x25, 0x98, 0xa4, 0xdb, 0x03, 0xe6, 0x0c, 0x80, 0x7c, 0x04, 0x57, 0x97, 0xcd, 0x1b,
+ 0x27, 0x33, 0x11, 0x98, 0x5e, 0x57, 0xea, 0x72, 0x99, 0xdc, 0x08, 0x19, 0xab, 0xfa, 0xc1, 0x68,
+ 0x15, 0x46, 0xb6, 0x94, 0x1d, 0xf1, 0xdd, 0xb6, 0xac, 0x1d, 0x88, 0xf4, 0x84, 0x59, 0xb4, 0x47,
+ 0x9d, 0xc9, 0x80, 0x2b, 0xf5, 0x09, 0x99, 0x2d, 0x27, 0xc0, 0x71, 0x79, 0xe0, 0x26, 0xe4, 0x02,
+ 0xa5, 0x44, 0x3f, 0x5c, 0x73, 0x09, 0x90, 0xd4, 0x6a, 0x69, 0xea, 0xbe, 0xd8, 0x6c, 0x37, 0xc4,
+ 0xd6, 0xae, 0x26, 0xe9, 0xd6, 0x67, 0x76, 0xb2, 0x34, 0x67, 0xb5, 0xdd, 0x58, 0xa7, 0x70, 0xfe,
+ 0xe3, 0x18, 0x8c, 0xe3, 0x8a, 0xcb, 0x35, 0xcf, 0x35, 0x62, 0xef, 0x26, 0x30, 0xd7, 0x75, 0x13,
+ 0x38, 0xe6, 0xdf, 0x04, 0xae, 0xc3, 0x54, 0x1d, 0xd7, 0x54, 0x64, 0x17, 0x64, 0x6a, 0x56, 0x5d,
+ 0xbb, 0xec, 0x03, 0x75, 0xd0, 0x82, 0x52, 0x9f, 0x30, 0x51, 0x0f, 0xca, 0x46, 0x02, 0x80, 0xa3,
+ 0x80, 0x2e, 0x37, 0xd3, 0x09, 0xb1, 0xd9, 0xe6, 0x59, 0x9b, 0x4b, 0xa9, 0x4f, 0x70, 0x70, 0x41,
+ 0x05, 0x48, 0x68, 0xf2, 0x8e, 0xbc, 0xcf, 0x66, 0x09, 0x4f, 0x47, 0x63, 0x27, 0x60, 0x12, 0x72,
+ 0xbd, 0x07, 0xff, 0xb1, 0xce, 0x5c, 0xfe, 0x05, 0x0e, 0xc6, 0xdc, 0xc2, 0xa6, 0x5d, 0xb6, 0x17,
+ 0x2e, 0x26, 0xae, 0xe3, 0x99, 0xd1, 0x70, 0x35, 0x08, 0x95, 0x92, 0x55, 0x99, 0x8f, 0x62, 0x30,
+ 0xe1, 0xae, 0x0c, 0xfb, 0x66, 0x34, 0x2a, 0xc0, 0x80, 0x6b, 0x42, 0xfc, 0x74, 0x87, 0x09, 0xb1,
+ 0x57, 0x6f, 0x04, 0x46, 0xea, 0x9d, 0x0c, 0xc5, 0x7a, 0x9a, 0x0c, 0xbd, 0xe1, 0x9e, 0x3d, 0xce,
+ 0x44, 0xaa, 0x80, 0x6b, 0x06, 0x69, 0x4f, 0x59, 0xfa, 0xa3, 0x4f, 0x59, 0xcc, 0x72, 0xcd, 0x39,
+ 0x61, 0xf4, 0x72, 0x75, 0x5a, 0xae, 0xce, 0xff, 0x58, 0x3f, 0x0c, 0xbb, 0xb3, 0x03, 0x67, 0xd5,
+ 0x1b, 0x30, 0x42, 0x4f, 0xd9, 0x19, 0xd6, 0x17, 0xbc, 0x3b, 0xbf, 0x43, 0x12, 0xd8, 0x53, 0xc2,
+ 0x30, 0x63, 0x62, 0xf6, 0xdc, 0x9b, 0x90, 0x35, 0xbf, 0xfb, 0xc4, 0xd8, 0x76, 0x3b, 0x84, 0x1b,
+ 0xcc, 0x77, 0x84, 0x71, 0x61, 0x69, 0xfd, 0xda, 0x2f, 0xc6, 0x3e, 0xce, 0xff, 0x7c, 0x2c, 0xf0,
+ 0x03, 0xfc, 0x9e, 0xd6, 0xbe, 0xde, 0xf1, 0x08, 0x8e, 0xee, 0x42, 0xd6, 0xe7, 0xde, 0xa7, 0x00,
+ 0xfb, 0xce, 0xdb, 0x07, 0xe8, 0x85, 0x80, 0xf9, 0x57, 0x04, 0xb2, 0x4a, 0xef, 0x47, 0x7f, 0x22,
+ 0x70, 0xbd, 0x19, 0x75, 0x32, 0xd8, 0x9d, 0x17, 0xff, 0x09, 0x07, 0x27, 0x69, 0x00, 0xed, 0x16,
+ 0x99, 0xed, 0x40, 0xdd, 0xc1, 0xcc, 0x53, 0xc4, 0x85, 0x9e, 0x43, 0xdd, 0x85, 0x6e, 0x05, 0x32,
+ 0x25, 0x6b, 0xe4, 0xc6, 0x7a, 0x1e, 0xb9, 0xec, 0x80, 0x47, 0xd5, 0xbc, 0xc6, 0x35, 0xe6, 0x6d,
+ 0x81, 0x1d, 0x29, 0x67, 0xdd, 0xad, 0x8d, 0x12, 0x2f, 0xff, 0x0e, 0x07, 0x27, 0x69, 0xbc, 0x1c,
+ 0xdc, 0xf8, 0x57, 0x5d, 0xd1, 0x03, 0x6b, 0x7a, 0x04, 0x7d, 0x63, 0xe3, 0xa9, 0x70, 0x84, 0x86,
+ 0x3b, 0x4d, 0xd6, 0xe1, 0x03, 0xe2, 0xbb, 0x30, 0x7d, 0x43, 0x36, 0x1e, 0x45, 0xe3, 0xf8, 0xdf,
+ 0xe0, 0x20, 0x87, 0xc3, 0x44, 0x77, 0xa6, 0x7e, 0x8c, 0x7a, 0xf3, 0xed, 0x0a, 0x80, 0x7f, 0x8c,
+ 0xed, 0x7c, 0xfa, 0x5a, 0xc6, 0x82, 0xdf, 0xdb, 0x30, 0xea, 0xd5, 0x42, 0x33, 0xf2, 0x7d, 0x32,
+ 0x52, 0x0f, 0x0b, 0x23, 0x9e, 0x81, 0x19, 0x39, 0xe2, 0x7d, 0x1b, 0x4e, 0xd2, 0x88, 0xf7, 0x91,
+ 0x74, 0xe9, 0x4f, 0x71, 0xf0, 0x98, 0xeb, 0x53, 0x80, 0xc7, 0xba, 0xab, 0xb5, 0x04, 0xec, 0xbb,
+ 0x83, 0xa2, 0xe3, 0x73, 0xad, 0x17, 0x3b, 0x7e, 0xba, 0xd0, 0xf9, 0xd1, 0x56, 0xa0, 0xc4, 0xf8,
+ 0x3f, 0xff, 0x59, 0x0e, 0x72, 0xae, 0x8a, 0x1e, 0xc7, 0x5a, 0xc2, 0x71, 0x56, 0xf0, 0xaf, 0x73,
+ 0x30, 0xea, 0xc3, 0x38, 0xf4, 0xd7, 0x7d, 0x2b, 0x30, 0xc2, 0x8e, 0x10, 0x59, 0xcb, 0xc3, 0x9d,
+ 0x0d, 0x0a, 0x2d, 0x9a, 0x1d, 0x32, 0x61, 0x0b, 0xc1, 0xc2, 0xf0, 0xb6, 0x2b, 0xcd, 0xff, 0xcf,
+ 0x18, 0x8c, 0x07, 0x21, 0xa2, 0x15, 0x18, 0xad, 0xaa, 0x4d, 0x43, 0x52, 0x9a, 0xb2, 0x26, 0xba,
+ 0x0f, 0x80, 0x3e, 0xde, 0xa1, 0xce, 0x04, 0x5f, 0xc8, 0x5a, 0xa4, 0x26, 0xbb, 0x33, 0x90, 0x22,
+ 0xf3, 0x18, 0xfa, 0xfa, 0x1a, 0xbb, 0xb2, 0x03, 0x18, 0xb4, 0x46, 0x20, 0x78, 0x9c, 0x6b, 0xea,
+ 0x03, 0x33, 0x9f, 0x3e, 0xb7, 0x3b, 0xa4, 0xa9, 0x0f, 0x58, 0x76, 0x09, 0x32, 0xe4, 0xbb, 0x1c,
+ 0xd6, 0x57, 0x52, 0xfb, 0x3b, 0xbe, 0x4d, 0x45, 0xbe, 0xc0, 0x61, 0x7e, 0x08, 0x35, 0x6d, 0x38,
+ 0x52, 0x68, 0x0d, 0x06, 0xea, 0xd2, 0x96, 0x5c, 0x37, 0xcf, 0x6b, 0xbe, 0xd4, 0x83, 0xf8, 0x66,
+ 0x97, 0x09, 0x65, 0xb1, 0x69, 0x68, 0x07, 0x02, 0x63, 0x93, 0xbb, 0x0a, 0x29, 0x07, 0x18, 0x65,
+ 0xed, 0xab, 0xcf, 0x43, 0xe4, 0xd6, 0x33, 0x1a, 0x37, 0x6f, 0x9f, 0xd1, 0xd1, 0x4c, 0x13, 0xd7,
+ 0x62, 0x57, 0x38, 0x7e, 0x0a, 0x26, 0x5c, 0x1a, 0x6c, 0x5a, 0x97, 0x99, 0x2f, 0x70, 0x80, 0xfc,
+ 0xd7, 0xda, 0xd0, 0x39, 0x38, 0x23, 0x14, 0x97, 0xc9, 0x65, 0x8c, 0xf0, 0xfb, 0x54, 0x69, 0x48,
+ 0x16, 0x6f, 0x6f, 0xe4, 0x97, 0xc5, 0xca, 0x5a, 0x96, 0x43, 0x59, 0x48, 0xaf, 0xae, 0x55, 0x44,
+ 0x0b, 0x42, 0x5e, 0xd5, 0xb9, 0x21, 0x14, 0xf3, 0x95, 0xa2, 0x20, 0x56, 0x4a, 0xf9, 0xd5, 0x6c,
+ 0x1c, 0x65, 0x60, 0x68, 0xb9, 0x58, 0x2e, 0xd3, 0x64, 0x3f, 0xca, 0xc1, 0xa4, 0x13, 0x41, 0x5c,
+ 0x13, 0x28, 0x79, 0x39, 0x9b, 0x40, 0x53, 0x30, 0x66, 0xa1, 0x3a, 0x32, 0x06, 0x10, 0xc0, 0x40,
+ 0xf1, 0xad, 0xa5, 0x72, 0xa5, 0x9c, 0x1d, 0x9c, 0xf9, 0x90, 0x83, 0xf4, 0x8a, 0x64, 0x54, 0x77,
+ 0x95, 0xe6, 0x0e, 0x89, 0xbc, 0x4e, 0xc3, 0x89, 0x95, 0x7c, 0xa5, 0x50, 0x5a, 0x5a, 0xbd, 0x21,
+ 0x56, 0xee, 0xae, 0x7b, 0xd7, 0xd9, 0x4f, 0xc1, 0xb4, 0x3b, 0xfb, 0xfa, 0xc6, 0xf2, 0xb2, 0x48,
+ 0x40, 0x59, 0x0e, 0x9d, 0x81, 0x93, 0xee, 0xdc, 0xf5, 0xbc, 0x50, 0x59, 0xca, 0x9b, 0x08, 0x31,
+ 0x3f, 0xc2, 0xd2, 0xea, 0x9d, 0xa2, 0x50, 0x2e, 0x32, 0x84, 0xf8, 0xcc, 0x0a, 0x64, 0xd8, 0x78,
+ 0xa2, 0x4a, 0x80, 0x5b, 0x51, 0x58, 0x5b, 0xad, 0x14, 0x57, 0xbd, 0x8f, 0x0a, 0x64, 0x21, 0x6d,
+ 0x66, 0x54, 0x8a, 0x6f, 0x55, 0xb2, 0x1c, 0x1a, 0x85, 0x8c, 0x09, 0x59, 0x5a, 0xc9, 0xdf, 0x28,
+ 0x66, 0x63, 0x33, 0xeb, 0xf6, 0xc7, 0x49, 0x1d, 0xdf, 0x08, 0x45, 0x27, 0x60, 0xa2, 0xb8, 0xba,
+ 0xb1, 0x12, 0xd4, 0xc0, 0x14, 0x0c, 0x2e, 0x11, 0x00, 0xe3, 0x28, 0x2c, 0x95, 0x6f, 0x89, 0xf9,
+ 0xd5, 0xfc, 0xf2, 0xdd, 0xf2, 0x52, 0x39, 0x1b, 0x9b, 0x11, 0x00, 0xec, 0xc5, 0x66, 0x2c, 0x8e,
+ 0xc5, 0xe5, 0x75, 0xf1, 0xe6, 0xda, 0x42, 0x10, 0xaf, 0x11, 0x48, 0x31, 0x5e, 0x18, 0x23, 0xcb,
+ 0xa1, 0x09, 0x18, 0x75, 0xf1, 0x23, 0xe0, 0xd8, 0x4c, 0x33, 0x68, 0x42, 0x47, 0xde, 0x9e, 0x21,
+ 0xdf, 0x4d, 0x5e, 0x14, 0x97, 0x56, 0xaf, 0xaf, 0xd1, 0x02, 0xba, 0xee, 0x7d, 0x0c, 0x41, 0x42,
+ 0x28, 0xe6, 0x17, 0xef, 0x66, 0x63, 0x8e, 0x1d, 0x8e, 0x38, 0x6d, 0xd6, 0x9d, 0xfc, 0xf2, 0xd2,
+ 0x62, 0xb6, 0x7f, 0xfe, 0xfb, 0x56, 0x48, 0x23, 0xca, 0xb2, 0x76, 0x5f, 0xa9, 0xca, 0xe8, 0xeb,
+ 0x1c, 0x0c, 0xbb, 0x3f, 0x82, 0x8d, 0x2e, 0x75, 0xdd, 0x70, 0x74, 0x7c, 0x68, 0x3c, 0x77, 0x39,
+ 0x22, 0x36, 0x1d, 0x31, 0xfc, 0xfe, 0x9f, 0xfb, 0xe8, 0x6b, 0x3f, 0x1c, 0xd3, 0xf8, 0x0b, 0x73,
+ 0xf7, 0xe7, 0xe7, 0xde, 0xa7, 0xc1, 0xc3, 0xab, 0x56, 0x88, 0x3c, 0xf3, 0xc1, 0x5c, 0x95, 0x12,
+ 0x5c, 0x63, 0x3b, 0x63, 0xd7, 0xb8, 0x99, 0xcd, 0x45, 0xfe, 0xf5, 0x30, 0xec, 0x80, 0x48, 0x5a,
+ 0x54, 0x6a, 0x41, 0x5c, 0xd0, 0x6f, 0x72, 0x90, 0xa2, 0x6f, 0x16, 0x2d, 0x35, 0xa4, 0x1d, 0x19,
+ 0x3d, 0xd5, 0xf1, 0xbd, 0x3c, 0x82, 0x63, 0xb6, 0x71, 0x26, 0x0a, 0x2a, 0x6b, 0xa0, 0x46, 0x1a,
+ 0x58, 0xe7, 0x9f, 0x08, 0xab, 0xb2, 0x82, 0xd1, 0xaf, 0xd1, 0x57, 0xf8, 0x70, 0xeb, 0xf2, 0xfc,
+ 0x2b, 0xbd, 0xb6, 0xce, 0xc3, 0x02, 0x7d, 0x8b, 0x83, 0xd1, 0x45, 0xef, 0x77, 0xea, 0xd1, 0x5c,
+ 0x94, 0x9b, 0x1b, 0xce, 0xae, 0x7c, 0x26, 0x3a, 0x01, 0x6b, 0xec, 0xff, 0x4f, 0x1a, 0xbb, 0xcf,
+ 0xcf, 0x74, 0xeb, 0x4d, 0x7b, 0xe5, 0x10, 0x37, 0xf9, 0x06, 0xbf, 0x70, 0xd8, 0x0e, 0x75, 0x31,
+ 0x22, 0x0d, 0x17, 0x22, 0x37, 0x5c, 0xe8, 0xb5, 0xe1, 0xc2, 0xd1, 0x1b, 0xae, 0x1d, 0x57, 0xc3,
+ 0x5d, 0x8c, 0xd0, 0xcf, 0x72, 0x90, 0x71, 0x7d, 0x44, 0x18, 0x85, 0x85, 0x17, 0x41, 0x1f, 0x38,
+ 0xce, 0x5d, 0x8a, 0x86, 0xcc, 0x1a, 0xbb, 0xfc, 0x30, 0xef, 0x8c, 0xc2, 0x49, 0xd3, 0xaf, 0xa0,
+ 0x0c, 0x6e, 0x89, 0xf5, 0xc6, 0xc3, 0xe6, 0x05, 0xf4, 0x24, 0x06, 0x84, 0xaa, 0xac, 0x55, 0xd1,
+ 0x9f, 0x89, 0xc3, 0x44, 0xe0, 0xc1, 0x57, 0xf4, 0x5c, 0xe8, 0x63, 0x1a, 0xe1, 0xc7, 0x64, 0x73,
+ 0x11, 0x8f, 0xf8, 0xf1, 0x5f, 0x88, 0x3d, 0xcc, 0x4f, 0x51, 0xb9, 0x5f, 0xf2, 0x1e, 0x8d, 0x78,
+ 0x98, 0x3f, 0x17, 0x92, 0x73, 0xc9, 0xdb, 0xee, 0x6f, 0x72, 0xfc, 0x65, 0x67, 0x17, 0xba, 0xd7,
+ 0x0c, 0x66, 0xfc, 0xf7, 0xcc, 0x70, 0xb7, 0xdf, 0xe4, 0x8b, 0x1d, 0x69, 0xc2, 0x85, 0xe6, 0xe7,
+ 0x75, 0x99, 0xbf, 0x18, 0x6a, 0x59, 0x02, 0xd0, 0x8b, 0xfc, 0x1b, 0x3d, 0x5b, 0x17, 0x3f, 0x1b,
+ 0xf4, 0x7f, 0x62, 0x30, 0x11, 0x78, 0x5c, 0x37, 0xb4, 0xd3, 0x3a, 0x1d, 0xee, 0x8d, 0xdc, 0x69,
+ 0xdf, 0x17, 0x7b, 0x98, 0x3f, 0x8b, 0xe3, 0x7d, 0x7f, 0xc7, 0x38, 0xe6, 0xd9, 0xa4, 0x63, 0x7e,
+ 0x9b, 0x9b, 0xa7, 0x1d, 0x83, 0xd1, 0xbd, 0x22, 0xf6, 0xdf, 0xfe, 0x9b, 0xf9, 0x00, 0x4b, 0xe7,
+ 0xb5, 0xf9, 0xab, 0xe1, 0x34, 0xb6, 0x7c, 0x42, 0xe9, 0x2f, 0xcf, 0x5f, 0xb4, 0xe9, 0x6d, 0xd9,
+ 0x86, 0xa1, 0x5f, 0x9d, 0x7f, 0x3e, 0x10, 0xbd, 0x7b, 0x49, 0xe8, 0xd7, 0x62, 0x80, 0xfc, 0xe7,
+ 0x87, 0x51, 0x98, 0xe5, 0x0a, 0x3d, 0x6a, 0x1c, 0x59, 0xf4, 0xbf, 0xc3, 0x3d, 0xcc, 0x93, 0xa9,
+ 0x16, 0x91, 0xee, 0xbf, 0xe1, 0x50, 0x6f, 0xd2, 0xdd, 0x7c, 0x19, 0x1d, 0x5e, 0xb4, 0x9b, 0x33,
+ 0x28, 0xb2, 0x5c, 0x37, 0x5f, 0x44, 0x87, 0x12, 0x2a, 0xfa, 0x24, 0x66, 0x7e, 0xfd, 0xdd, 0x73,
+ 0xf4, 0x77, 0xbe, 0xa3, 0x71, 0x0c, 0x3c, 0x60, 0x9d, 0x7b, 0xae, 0x27, 0x1a, 0x66, 0x57, 0xff,
+ 0x07, 0xf7, 0x30, 0xcf, 0xd6, 0x4f, 0x88, 0x90, 0xff, 0xd0, 0x14, 0x72, 0x54, 0xdb, 0xb2, 0x79,
+ 0x03, 0x1d, 0x8f, 0x61, 0xb1, 0x04, 0x1e, 0xc1, 0xaa, 0x6c, 0x2e, 0xa0, 0x23, 0x9b, 0x14, 0xf4,
+ 0xaf, 0x63, 0x30, 0x11, 0x78, 0x6e, 0x3a, 0xd4, 0x9e, 0x74, 0x3a, 0x65, 0x9d, 0x0b, 0xf9, 0x64,
+ 0xaa, 0x4f, 0x89, 0x67, 0x7a, 0x55, 0xe2, 0x99, 0xa3, 0x28, 0xf1, 0x4c, 0x0f, 0x4a, 0x3c, 0x73,
+ 0x38, 0x25, 0xfe, 0x72, 0x1c, 0xa6, 0xc3, 0x8e, 0x54, 0xa0, 0x17, 0x3b, 0xfa, 0xd3, 0xd0, 0x7d,
+ 0xd8, 0x5c, 0xf4, 0x2d, 0x61, 0xfe, 0xcb, 0xb1, 0x87, 0xf9, 0x1c, 0xf3, 0x9d, 0x01, 0x9b, 0xcc,
+ 0x0f, 0xf3, 0xe7, 0xc3, 0x33, 0x7d, 0xbe, 0xf5, 0xbb, 0x63, 0xfc, 0x33, 0x1d, 0xd5, 0x39, 0x60,
+ 0xff, 0x19, 0x9b, 0xd5, 0x15, 0xbe, 0x74, 0xa8, 0x51, 0x10, 0xc2, 0xee, 0x19, 0xfe, 0xe9, 0x30,
+ 0xfd, 0x0e, 0xa1, 0x28, 0xf1, 0x85, 0x5e, 0x47, 0x44, 0x30, 0x27, 0xf4, 0xa3, 0x71, 0x98, 0x0e,
+ 0x3b, 0x14, 0x12, 0xda, 0x9f, 0x5d, 0x4e, 0x91, 0xf4, 0xd2, 0x9f, 0x3f, 0x1a, 0x7b, 0x98, 0x7f,
+ 0x82, 0x38, 0xdc, 0xa0, 0x0e, 0xf3, 0xfa, 0xdc, 0x3f, 0xe4, 0xe6, 0x9f, 0x09, 0x1f, 0x1f, 0x41,
+ 0x97, 0x98, 0xa9, 0x1f, 0xcc, 0xcf, 0xbf, 0x12, 0x6d, 0x58, 0x85, 0xb3, 0x78, 0x66, 0xfe, 0xe9,
+ 0xc0, 0x01, 0x13, 0x4e, 0xf1, 0xca, 0xfc, 0x4b, 0x5d, 0x87, 0x58, 0x28, 0x35, 0xfa, 0x5a, 0x0c,
+ 0x26, 0x02, 0x8f, 0xab, 0x84, 0x1a, 0xac, 0x4e, 0x87, 0x5b, 0x7a, 0xe9, 0x92, 0x8f, 0x5d, 0x36,
+ 0xec, 0xb7, 0x39, 0xd4, 0xb3, 0xc8, 0x37, 0x5f, 0x43, 0x47, 0x92, 0xf7, 0xe6, 0x65, 0xd4, 0x8b,
+ 0xb0, 0x37, 0xaf, 0xa2, 0xc3, 0x4a, 0x1a, 0xfd, 0x50, 0x9c, 0x1e, 0x23, 0x0f, 0x38, 0xcf, 0x82,
+ 0x5e, 0xe8, 0xe0, 0x63, 0xc3, 0x4f, 0xf8, 0xe4, 0x5e, 0xec, 0x95, 0x8c, 0x79, 0xe7, 0xef, 0x8d,
+ 0xb9, 0xbd, 0xf3, 0x37, 0x4d, 0xc9, 0xf7, 0x60, 0x9d, 0x36, 0x6f, 0xa2, 0x63, 0x33, 0x4d, 0x56,
+ 0x2f, 0x44, 0xb3, 0x4b, 0x9b, 0x45, 0x74, 0x1c, 0x46, 0x09, 0xfd, 0x46, 0x0c, 0xa6, 0xc3, 0x0e,
+ 0xee, 0x84, 0x5a, 0xa4, 0x2e, 0x27, 0x7d, 0x42, 0xfd, 0xb5, 0x57, 0xd7, 0x67, 0x0e, 0xa1, 0xeb,
+ 0x33, 0x47, 0xd4, 0xf5, 0x99, 0xde, 0x74, 0x7d, 0xe6, 0xd0, 0xba, 0xfe, 0x97, 0x62, 0x90, 0xf5,
+ 0x5e, 0xed, 0x42, 0xb3, 0x1d, 0x7d, 0xb6, 0x6f, 0x8f, 0x27, 0xd7, 0xfd, 0x16, 0x05, 0xff, 0x53,
+ 0xdc, 0xc3, 0x3c, 0x62, 0x6e, 0xd8, 0x71, 0x5c, 0xfb, 0x61, 0xfe, 0x31, 0x3f, 0xd0, 0xe7, 0x93,
+ 0xef, 0xf1, 0xe7, 0xc2, 0xb4, 0xc8, 0x71, 0x39, 0x03, 0xdb, 0xd7, 0x37, 0xf8, 0x97, 0x7b, 0xd5,
+ 0x37, 0x37, 0x07, 0xf4, 0x0d, 0x0e, 0xb2, 0xde, 0x1b, 0x5a, 0xa1, 0x02, 0x09, 0xb9, 0xca, 0x15,
+ 0x45, 0x20, 0xdf, 0xc3, 0x3d, 0xcc, 0x9f, 0x22, 0x4e, 0xce, 0xd9, 0x72, 0xaf, 0x73, 0x7b, 0x67,
+ 0xfe, 0x5c, 0x60, 0xcf, 0x3a, 0xaf, 0xd8, 0x53, 0xcf, 0xf2, 0xfc, 0xfc, 0x5c, 0x57, 0x1d, 0xf0,
+ 0x51, 0xa1, 0x5f, 0xe3, 0x60, 0x2a, 0x64, 0x03, 0x2f, 0xd4, 0xd4, 0x75, 0xde, 0xf0, 0x0b, 0x5d,
+ 0xd6, 0x09, 0xdc, 0xbc, 0xe0, 0xd7, 0x9c, 0x63, 0x6d, 0x81, 0x7f, 0xb5, 0xd7, 0x36, 0xec, 0x3a,
+ 0xb9, 0xe2, 0x16, 0x7d, 0x91, 0x83, 0x8c, 0xeb, 0x2a, 0x5a, 0xe8, 0xa2, 0x54, 0xd0, 0x85, 0xb5,
+ 0x28, 0x3d, 0x27, 0x3b, 0xab, 0xfc, 0x16, 0x8a, 0xd2, 0x41, 0x9b, 0xcf, 0xa2, 0x5e, 0x7b, 0x07,
+ 0xfd, 0x3e, 0x07, 0x23, 0x9e, 0xcb, 0x4c, 0xe8, 0x72, 0x07, 0x37, 0xe2, 0xbf, 0xec, 0x95, 0x9b,
+ 0x8d, 0x8a, 0xce, 0x3a, 0x43, 0x77, 0x3b, 0x9b, 0x1a, 0x8a, 0x32, 0xec, 0x36, 0x5f, 0x45, 0x47,
+ 0x19, 0x73, 0xe8, 0x17, 0x39, 0xc8, 0x7a, 0xef, 0x4a, 0x85, 0x0e, 0xb8, 0x90, 0x4b, 0x55, 0xa1,
+ 0xb6, 0xdc, 0xdd, 0x57, 0x33, 0xd1, 0xfa, 0x6a, 0xa6, 0xe7, 0xbe, 0xfa, 0x2a, 0x07, 0xc8, 0x7f,
+ 0x5f, 0x34, 0x74, 0x61, 0x24, 0xf4, 0x6a, 0x69, 0xae, 0xf3, 0xa1, 0x7e, 0xfe, 0x3e, 0x69, 0x47,
+ 0x8b, 0xbf, 0x14, 0xc5, 0x28, 0x48, 0xac, 0x14, 0x6c, 0x1d, 0x5e, 0xe5, 0xaf, 0xf4, 0x3a, 0xb2,
+ 0x1c, 0xe4, 0xe8, 0xf3, 0x31, 0x48, 0x3b, 0xef, 0x62, 0xa2, 0x99, 0xce, 0xb3, 0x3a, 0xe7, 0xe6,
+ 0x7a, 0xb7, 0x36, 0xfd, 0xaa, 0xc3, 0x33, 0x38, 0xee, 0x62, 0xda, 0x9e, 0xc1, 0x01, 0x74, 0x7a,
+ 0x86, 0x87, 0xf9, 0x11, 0x86, 0x60, 0xde, 0xba, 0x7c, 0x98, 0x3f, 0xe9, 0x81, 0xf8, 0x3c, 0xc9,
+ 0x16, 0x7f, 0x26, 0x34, 0x7c, 0xa1, 0xb7, 0x2d, 0x48, 0x94, 0xce, 0xbf, 0xd4, 0x73, 0xd4, 0x62,
+ 0x51, 0xa3, 0xaf, 0x70, 0x90, 0x72, 0x5c, 0xdf, 0x08, 0xdd, 0xe3, 0xf1, 0x5f, 0x86, 0x09, 0xdd,
+ 0xe3, 0x09, 0xb8, 0x0d, 0xc2, 0xef, 0xb9, 0x07, 0xeb, 0xdb, 0xa8, 0x5b, 0xcb, 0xac, 0x90, 0xb8,
+ 0xf7, 0x66, 0xa1, 0x9f, 0xe1, 0x60, 0xc8, 0xba, 0x08, 0x84, 0x2e, 0x74, 0x98, 0x6d, 0xf4, 0xd2,
+ 0xf5, 0xff, 0x9f, 0x73, 0x74, 0xae, 0xb3, 0x06, 0xf8, 0x62, 0x1e, 0x76, 0x3f, 0xa9, 0xc3, 0x14,
+ 0xc0, 0x15, 0xe7, 0x58, 0xe8, 0xe8, 0x1f, 0x70, 0x90, 0x76, 0xde, 0x1c, 0x09, 0xd5, 0xda, 0x80,
+ 0xeb, 0x25, 0xa1, 0x16, 0xc5, 0x5d, 0xe7, 0x99, 0xee, 0x75, 0x9e, 0xe9, 0xa9, 0xce, 0xbf, 0xc0,
+ 0x41, 0xda, 0x79, 0x13, 0x27, 0x7c, 0xa4, 0xf9, 0xaf, 0xeb, 0x84, 0xd6, 0xf9, 0x1e, 0x35, 0xe7,
+ 0xfc, 0xf9, 0x2e, 0x95, 0xbd, 0x56, 0x25, 0x4c, 0xf1, 0x10, 0x78, 0x89, 0x9f, 0xef, 0xa1, 0xda,
+ 0x36, 0x21, 0xfa, 0x4c, 0x1c, 0xc6, 0x83, 0x8e, 0x07, 0x86, 0xae, 0x68, 0x76, 0x38, 0x4b, 0x98,
+ 0x8b, 0x76, 0x3a, 0x8a, 0xff, 0x5c, 0xec, 0x61, 0x3e, 0xc3, 0x86, 0x3e, 0x3d, 0x04, 0xf7, 0x30,
+ 0x7f, 0xc2, 0x95, 0xf6, 0x19, 0x82, 0xff, 0xc2, 0x31, 0x23, 0x1a, 0x36, 0x29, 0xf2, 0x1c, 0xb8,
+ 0xc2, 0x32, 0x59, 0xe2, 0x17, 0x0f, 0x35, 0x8f, 0x0a, 0x60, 0x75, 0x29, 0x7c, 0xef, 0x39, 0x00,
+ 0xfb, 0x10, 0x7b, 0xcf, 0x7e, 0x2e, 0xe8, 0x3f, 0xc6, 0x60, 0x3c, 0xe8, 0xec, 0x62, 0x68, 0xcf,
+ 0x74, 0x38, 0xe8, 0x18, 0xb5, 0x67, 0xfe, 0x88, 0x7b, 0x98, 0x9f, 0x22, 0x51, 0x2e, 0xeb, 0x07,
+ 0x6f, 0x80, 0xfb, 0x9b, 0xdc, 0xfc, 0xa5, 0xf0, 0xa9, 0x92, 0xf7, 0x38, 0x2a, 0x0d, 0x75, 0x5f,
+ 0x9d, 0xbf, 0x12, 0x6d, 0x76, 0x15, 0x4c, 0x7e, 0x69, 0xfe, 0x42, 0xa0, 0x6a, 0x07, 0x63, 0x5f,
+ 0x99, 0x7f, 0xae, 0xeb, 0x40, 0x08, 0xa4, 0x44, 0x5f, 0x8a, 0xc1, 0xa8, 0xef, 0x2c, 0x65, 0xe8,
+ 0xbe, 0x70, 0xd8, 0xa9, 0xcb, 0xa8, 0x92, 0x7e, 0xe8, 0x9a, 0xb5, 0xfe, 0x0a, 0x87, 0x7a, 0x12,
+ 0xeb, 0xe6, 0x35, 0x74, 0x68, 0x99, 0x6e, 0x3e, 0x85, 0xa2, 0x0a, 0x74, 0xf3, 0x05, 0x74, 0x18,
+ 0x69, 0xa2, 0xff, 0x16, 0xa3, 0x37, 0x22, 0x3d, 0x07, 0x2c, 0xd1, 0xb3, 0x1d, 0xfc, 0x65, 0xf0,
+ 0x31, 0xd3, 0xdc, 0x7c, 0x2f, 0x24, 0xcc, 0xd5, 0x7e, 0xd3, 0xb3, 0x47, 0xf2, 0x35, 0x53, 0xba,
+ 0x11, 0x8d, 0xc7, 0xe6, 0x75, 0x74, 0x2c, 0x96, 0xc3, 0x92, 0x74, 0x77, 0xb3, 0xb1, 0x99, 0x47,
+ 0x47, 0xb5, 0x19, 0xe8, 0x9f, 0xc7, 0x60, 0x3c, 0xe8, 0xf0, 0x68, 0xa8, 0xc1, 0xe8, 0x70, 0xd2,
+ 0x34, 0xd4, 0x37, 0x79, 0xf5, 0x76, 0xa6, 0x47, 0xbd, 0x9d, 0x39, 0x82, 0xde, 0xce, 0x44, 0xd7,
+ 0xdb, 0x99, 0x43, 0xe9, 0xed, 0xbf, 0xe4, 0x60, 0x2c, 0xe0, 0xd8, 0x69, 0xa8, 0xde, 0x86, 0x1f,
+ 0x51, 0xed, 0x71, 0x5a, 0x7d, 0xcb, 0x29, 0xd4, 0xd7, 0xf8, 0xab, 0xbd, 0xf8, 0x72, 0xdf, 0x94,
+ 0xfa, 0x2f, 0x73, 0x90, 0x76, 0xde, 0xe7, 0x45, 0xe1, 0xcf, 0x77, 0xfb, 0x2e, 0xfd, 0x86, 0xf6,
+ 0xfb, 0xab, 0xa4, 0x6a, 0x3d, 0x86, 0x19, 0xdb, 0xa4, 0x80, 0x6b, 0xdc, 0x4c, 0xee, 0xfa, 0x2f,
+ 0xe7, 0x91, 0xff, 0x78, 0xee, 0xbf, 0xcd, 0xcf, 0xee, 0x1a, 0x46, 0x4b, 0xbf, 0x36, 0x37, 0xf7,
+ 0xe0, 0xc1, 0x03, 0xef, 0xd9, 0x5d, 0xa9, 0x6d, 0xec, 0xce, 0x91, 0x3b, 0x6e, 0x97, 0x5b, 0x75,
+ 0xc9, 0xd8, 0x56, 0xb5, 0xc6, 0xc2, 0x87, 0x1c, 0x9c, 0xa8, 0xaa, 0x8d, 0xe0, 0x06, 0x2d, 0x24,
+ 0x17, 0xeb, 0xad, 0x75, 0x5c, 0xef, 0x75, 0x6e, 0xf3, 0x0a, 0x43, 0xd9, 0x51, 0xeb, 0x52, 0x73,
+ 0x67, 0x56, 0xd5, 0x76, 0xe6, 0x76, 0xe4, 0x26, 0x69, 0xd5, 0x9c, 0x5d, 0xd0, 0x1c, 0xe3, 0x80,
+ 0x6b, 0x3d, 0x77, 0x7f, 0xfe, 0xe5, 0x5a, 0xbd, 0xf5, 0xf9, 0xd8, 0xd8, 0x0d, 0x4a, 0x4a, 0xae,
+ 0xdd, 0xe1, 0xe0, 0x77, 0xf6, 0xce, 0xfc, 0x2f, 0x9b, 0xd0, 0xb7, 0x09, 0xf4, 0xed, 0xc5, 0x7a,
+ 0xeb, 0xed, 0x3b, 0xf3, 0x5b, 0x03, 0x84, 0xe1, 0x73, 0xff, 0x37, 0x00, 0x00, 0xff, 0xff, 0x6a,
+ 0xc6, 0x84, 0x4c, 0x5b, 0xc0, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
@@ -12584,6 +13521,13 @@ type DlpServiceClient interface {
// Updates a job trigger.
// See https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.
UpdateJobTrigger(ctx context.Context, in *UpdateJobTriggerRequest, opts ...grpc.CallOption) (*JobTrigger, error)
+ // Inspect hybrid content and store findings to a trigger. The inspection
+ // will be processed asynchronously. To review the findings monitor the
+ // jobs within the trigger.
+ // Early access feature is in a pre-release state and might change or have
+ // limited support. For more information, see
+ // https://cloud.google.com/products#product-launch-stages.
+ HybridInspectJobTrigger(ctx context.Context, in *HybridInspectJobTriggerRequest, opts ...grpc.CallOption) (*HybridInspectResponse, error)
// Gets a job trigger.
// See https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.
GetJobTrigger(ctx context.Context, in *GetJobTriggerRequest, opts ...grpc.CallOption) (*JobTrigger, error)
@@ -12645,6 +13589,19 @@ type DlpServiceClient interface {
// See https://cloud.google.com/dlp/docs/creating-stored-infotypes to
// learn more.
DeleteStoredInfoType(ctx context.Context, in *DeleteStoredInfoTypeRequest, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Inspect hybrid content and store findings to a job.
+ // To review the findings inspect the job. Inspection will occur
+ // asynchronously.
+ // Early access feature is in a pre-release state and might change or have
+ // limited support. For more information, see
+ // https://cloud.google.com/products#product-launch-stages.
+ HybridInspectDlpJob(ctx context.Context, in *HybridInspectDlpJobRequest, opts ...grpc.CallOption) (*HybridInspectResponse, error)
+ // Finish a running hybrid DlpJob. Triggers the finalization steps and running
+ // of any enabled actions that have not yet run.
+ // Early access feature is in a pre-release state and might change or have
+ // limited support. For more information, see
+ // https://cloud.google.com/products#product-launch-stages.
+ FinishDlpJob(ctx context.Context, in *FinishDlpJobRequest, opts ...grpc.CallOption) (*empty.Empty, error)
}
type dlpServiceClient struct {
@@ -12808,6 +13765,15 @@ func (c *dlpServiceClient) UpdateJobTrigger(ctx context.Context, in *UpdateJobTr
return out, nil
}
+func (c *dlpServiceClient) HybridInspectJobTrigger(ctx context.Context, in *HybridInspectJobTriggerRequest, opts ...grpc.CallOption) (*HybridInspectResponse, error) {
+ out := new(HybridInspectResponse)
+ err := c.cc.Invoke(ctx, "/google.privacy.dlp.v2.DlpService/HybridInspectJobTrigger", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
func (c *dlpServiceClient) GetJobTrigger(ctx context.Context, in *GetJobTriggerRequest, opts ...grpc.CallOption) (*JobTrigger, error) {
out := new(JobTrigger)
err := c.cc.Invoke(ctx, "/google.privacy.dlp.v2.DlpService/GetJobTrigger", in, out, opts...)
@@ -12934,6 +13900,24 @@ func (c *dlpServiceClient) DeleteStoredInfoType(ctx context.Context, in *DeleteS
return out, nil
}
+func (c *dlpServiceClient) HybridInspectDlpJob(ctx context.Context, in *HybridInspectDlpJobRequest, opts ...grpc.CallOption) (*HybridInspectResponse, error) {
+ out := new(HybridInspectResponse)
+ err := c.cc.Invoke(ctx, "/google.privacy.dlp.v2.DlpService/HybridInspectDlpJob", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *dlpServiceClient) FinishDlpJob(ctx context.Context, in *FinishDlpJobRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/google.privacy.dlp.v2.DlpService/FinishDlpJob", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
// DlpServiceServer is the server API for DlpService service.
type DlpServiceServer interface {
// Finds potentially sensitive info in content.
@@ -13017,6 +14001,13 @@ type DlpServiceServer interface {
// Updates a job trigger.
// See https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.
UpdateJobTrigger(context.Context, *UpdateJobTriggerRequest) (*JobTrigger, error)
+ // Inspect hybrid content and store findings to a trigger. The inspection
+ // will be processed asynchronously. To review the findings monitor the
+ // jobs within the trigger.
+ // Early access feature is in a pre-release state and might change or have
+ // limited support. For more information, see
+ // https://cloud.google.com/products#product-launch-stages.
+ HybridInspectJobTrigger(context.Context, *HybridInspectJobTriggerRequest) (*HybridInspectResponse, error)
// Gets a job trigger.
// See https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.
GetJobTrigger(context.Context, *GetJobTriggerRequest) (*JobTrigger, error)
@@ -13078,6 +14069,19 @@ type DlpServiceServer interface {
// See https://cloud.google.com/dlp/docs/creating-stored-infotypes to
// learn more.
DeleteStoredInfoType(context.Context, *DeleteStoredInfoTypeRequest) (*empty.Empty, error)
+ // Inspect hybrid content and store findings to a job.
+ // To review the findings inspect the job. Inspection will occur
+ // asynchronously.
+ // Early access feature is in a pre-release state and might change or have
+ // limited support. For more information, see
+ // https://cloud.google.com/products#product-launch-stages.
+ HybridInspectDlpJob(context.Context, *HybridInspectDlpJobRequest) (*HybridInspectResponse, error)
+ // Finish a running hybrid DlpJob. Triggers the finalization steps and running
+ // of any enabled actions that have not yet run.
+ // Early access feature is in a pre-release state and might change or have
+ // limited support. For more information, see
+ // https://cloud.google.com/products#product-launch-stages.
+ FinishDlpJob(context.Context, *FinishDlpJobRequest) (*empty.Empty, error)
}
// UnimplementedDlpServiceServer can be embedded to have forward compatible implementations.
@@ -13135,6 +14139,9 @@ func (*UnimplementedDlpServiceServer) CreateJobTrigger(ctx context.Context, req
func (*UnimplementedDlpServiceServer) UpdateJobTrigger(ctx context.Context, req *UpdateJobTriggerRequest) (*JobTrigger, error) {
return nil, status1.Errorf(codes.Unimplemented, "method UpdateJobTrigger not implemented")
}
+func (*UnimplementedDlpServiceServer) HybridInspectJobTrigger(ctx context.Context, req *HybridInspectJobTriggerRequest) (*HybridInspectResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method HybridInspectJobTrigger not implemented")
+}
func (*UnimplementedDlpServiceServer) GetJobTrigger(ctx context.Context, req *GetJobTriggerRequest) (*JobTrigger, error) {
return nil, status1.Errorf(codes.Unimplemented, "method GetJobTrigger not implemented")
}
@@ -13177,6 +14184,12 @@ func (*UnimplementedDlpServiceServer) ListStoredInfoTypes(ctx context.Context, r
func (*UnimplementedDlpServiceServer) DeleteStoredInfoType(ctx context.Context, req *DeleteStoredInfoTypeRequest) (*empty.Empty, error) {
return nil, status1.Errorf(codes.Unimplemented, "method DeleteStoredInfoType not implemented")
}
+func (*UnimplementedDlpServiceServer) HybridInspectDlpJob(ctx context.Context, req *HybridInspectDlpJobRequest) (*HybridInspectResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method HybridInspectDlpJob not implemented")
+}
+func (*UnimplementedDlpServiceServer) FinishDlpJob(ctx context.Context, req *FinishDlpJobRequest) (*empty.Empty, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method FinishDlpJob not implemented")
+}
func RegisterDlpServiceServer(s *grpc.Server, srv DlpServiceServer) {
s.RegisterService(&_DlpService_serviceDesc, srv)
@@ -13488,6 +14501,24 @@ func _DlpService_UpdateJobTrigger_Handler(srv interface{}, ctx context.Context,
return interceptor(ctx, in, info, handler)
}
+func _DlpService_HybridInspectJobTrigger_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HybridInspectJobTriggerRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DlpServiceServer).HybridInspectJobTrigger(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.privacy.dlp.v2.DlpService/HybridInspectJobTrigger",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DlpServiceServer).HybridInspectJobTrigger(ctx, req.(*HybridInspectJobTriggerRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
func _DlpService_GetJobTrigger_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetJobTriggerRequest)
if err := dec(in); err != nil {
@@ -13740,6 +14771,42 @@ func _DlpService_DeleteStoredInfoType_Handler(srv interface{}, ctx context.Conte
return interceptor(ctx, in, info, handler)
}
+func _DlpService_HybridInspectDlpJob_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HybridInspectDlpJobRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DlpServiceServer).HybridInspectDlpJob(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.privacy.dlp.v2.DlpService/HybridInspectDlpJob",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DlpServiceServer).HybridInspectDlpJob(ctx, req.(*HybridInspectDlpJobRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _DlpService_FinishDlpJob_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(FinishDlpJobRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DlpServiceServer).FinishDlpJob(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.privacy.dlp.v2.DlpService/FinishDlpJob",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DlpServiceServer).FinishDlpJob(ctx, req.(*FinishDlpJobRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
var _DlpService_serviceDesc = grpc.ServiceDesc{
ServiceName: "google.privacy.dlp.v2.DlpService",
HandlerType: (*DlpServiceServer)(nil),
@@ -13812,6 +14879,10 @@ var _DlpService_serviceDesc = grpc.ServiceDesc{
MethodName: "UpdateJobTrigger",
Handler: _DlpService_UpdateJobTrigger_Handler,
},
+ {
+ MethodName: "HybridInspectJobTrigger",
+ Handler: _DlpService_HybridInspectJobTrigger_Handler,
+ },
{
MethodName: "GetJobTrigger",
Handler: _DlpService_GetJobTrigger_Handler,
@@ -13868,6 +14939,14 @@ var _DlpService_serviceDesc = grpc.ServiceDesc{
MethodName: "DeleteStoredInfoType",
Handler: _DlpService_DeleteStoredInfoType_Handler,
},
+ {
+ MethodName: "HybridInspectDlpJob",
+ Handler: _DlpService_HybridInspectDlpJob_Handler,
+ },
+ {
+ MethodName: "FinishDlpJob",
+ Handler: _DlpService_FinishDlpJob_Handler,
+ },
},
Streams: []grpc.StreamDesc{},
Metadata: "google/privacy/dlp/v2/dlp.proto",
diff --git a/googleapis/privacy/dlp/v2/storage.pb.go b/googleapis/privacy/dlp/v2/storage.pb.go
index e51cdc998e..08aa07159c 100644
--- a/googleapis/privacy/dlp/v2/storage.pb.go
+++ b/googleapis/privacy/dlp/v2/storage.pb.go
@@ -1518,8 +1518,11 @@ func (m *CloudStoragePath) GetPath() string {
type BigQueryOptions struct {
// Complete BigQuery table reference.
TableReference *BigQueryTable `protobuf:"bytes,1,opt,name=table_reference,json=tableReference,proto3" json:"table_reference,omitempty"`
- // References to fields uniquely identifying rows within the table.
- // Nested fields in the format, like `person.birthdate.year`, are allowed.
+ // Table fields that may uniquely identify a row within the table. When
+ // `actions.saveFindings.outputConfig.table` is specified, the values of
+ // columns specified here are available in the output table under
+ // `location.content_locations.record_location.record_key.id_values`. Nested
+ // fields such as `person.birthdate.year` are allowed.
IdentifyingFields []*FieldId `protobuf:"bytes,2,rep,name=identifying_fields,json=identifyingFields,proto3" json:"identifying_fields,omitempty"`
// Max number of rows to scan. If the table has more rows than this value, the
// rest of the rows are omitted. If not set, or if set to 0, all rows will be
@@ -1614,6 +1617,7 @@ type StorageConfig struct {
// *StorageConfig_DatastoreOptions
// *StorageConfig_CloudStorageOptions
// *StorageConfig_BigQueryOptions
+ // *StorageConfig_HybridOptions
Type isStorageConfig_Type `protobuf_oneof:"type"`
TimespanConfig *StorageConfig_TimespanConfig `protobuf:"bytes,6,opt,name=timespan_config,json=timespanConfig,proto3" json:"timespan_config,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -1662,12 +1666,18 @@ type StorageConfig_BigQueryOptions struct {
BigQueryOptions *BigQueryOptions `protobuf:"bytes,4,opt,name=big_query_options,json=bigQueryOptions,proto3,oneof"`
}
+type StorageConfig_HybridOptions struct {
+ HybridOptions *HybridOptions `protobuf:"bytes,9,opt,name=hybrid_options,json=hybridOptions,proto3,oneof"`
+}
+
func (*StorageConfig_DatastoreOptions) isStorageConfig_Type() {}
func (*StorageConfig_CloudStorageOptions) isStorageConfig_Type() {}
func (*StorageConfig_BigQueryOptions) isStorageConfig_Type() {}
+func (*StorageConfig_HybridOptions) isStorageConfig_Type() {}
+
func (m *StorageConfig) GetType() isStorageConfig_Type {
if m != nil {
return m.Type
@@ -1696,6 +1706,13 @@ func (m *StorageConfig) GetBigQueryOptions() *BigQueryOptions {
return nil
}
+func (m *StorageConfig) GetHybridOptions() *HybridOptions {
+ if x, ok := m.GetType().(*StorageConfig_HybridOptions); ok {
+ return x.HybridOptions
+ }
+ return nil
+}
+
func (m *StorageConfig) GetTimespanConfig() *StorageConfig_TimespanConfig {
if m != nil {
return m.TimespanConfig
@@ -1709,6 +1726,7 @@ func (*StorageConfig) XXX_OneofWrappers() []interface{} {
(*StorageConfig_DatastoreOptions)(nil),
(*StorageConfig_CloudStorageOptions)(nil),
(*StorageConfig_BigQueryOptions)(nil),
+ (*StorageConfig_HybridOptions)(nil),
}
}
@@ -1798,12 +1816,104 @@ func (m *StorageConfig_TimespanConfig) GetEnableAutoPopulationOfTimespanConfig()
return false
}
+// Configuration to control jobs where the content being inspected is outside
+// of Google Cloud Platform.
+type HybridOptions struct {
+ // A short description of where the data is coming from. Will be stored once
+ // in the job. 256 max length.
+ Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
+ // These are labels that each inspection request must include within their
+ // 'finding_labels' map. Request may contain others, but any missing one of
+ // these will be rejected.
+ //
+ // Label keys must be between 1 and 63 characters long and must conform
+ // to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
+ //
+ // No more than 10 keys can be required.
+ RequiredFindingLabelKeys []string `protobuf:"bytes,2,rep,name=required_finding_label_keys,json=requiredFindingLabelKeys,proto3" json:"required_finding_label_keys,omitempty"`
+ // To organize findings, these labels will be added to each finding.
+ //
+ // Label keys must be between 1 and 63 characters long and must conform
+ // to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
+ //
+ // Label values must be between 0 and 63 characters long and must conform
+ // to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
+ //
+ // No more than 10 labels can be associated with a given finding.
+ //
+ // Example: "environment" : "production"
+ // Example: "pipeline" : "etl"
+ Labels map[string]string `protobuf:"bytes,3,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // If the container is a table, additional information to make findings
+ // meaningful such as the columns that are primary keys.
+ TableOptions *TableOptions `protobuf:"bytes,4,opt,name=table_options,json=tableOptions,proto3" json:"table_options,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *HybridOptions) Reset() { *m = HybridOptions{} }
+func (m *HybridOptions) String() string { return proto.CompactTextString(m) }
+func (*HybridOptions) ProtoMessage() {}
+func (*HybridOptions) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ab5e749073e1398d, []int{13}
+}
+
+func (m *HybridOptions) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_HybridOptions.Unmarshal(m, b)
+}
+func (m *HybridOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_HybridOptions.Marshal(b, m, deterministic)
+}
+func (m *HybridOptions) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_HybridOptions.Merge(m, src)
+}
+func (m *HybridOptions) XXX_Size() int {
+ return xxx_messageInfo_HybridOptions.Size(m)
+}
+func (m *HybridOptions) XXX_DiscardUnknown() {
+ xxx_messageInfo_HybridOptions.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_HybridOptions proto.InternalMessageInfo
+
+func (m *HybridOptions) GetDescription() string {
+ if m != nil {
+ return m.Description
+ }
+ return ""
+}
+
+func (m *HybridOptions) GetRequiredFindingLabelKeys() []string {
+ if m != nil {
+ return m.RequiredFindingLabelKeys
+ }
+ return nil
+}
+
+func (m *HybridOptions) GetLabels() map[string]string {
+ if m != nil {
+ return m.Labels
+ }
+ return nil
+}
+
+func (m *HybridOptions) GetTableOptions() *TableOptions {
+ if m != nil {
+ return m.TableOptions
+ }
+ return nil
+}
+
// Row key for identifying a record in BigQuery table.
type BigQueryKey struct {
// Complete BigQuery table reference.
TableReference *BigQueryTable `protobuf:"bytes,1,opt,name=table_reference,json=tableReference,proto3" json:"table_reference,omitempty"`
- // Absolute number of the row from the beginning of the table at the time
- // of scanning.
+ // Row number inferred at the time the table was scanned. This value is
+ // nondeterministic, cannot be queried, and may be null for inspection
+ // jobs. To locate findings within a table, specify
+ // `inspect_job.storage_config.big_query_options.identifying_fields` in
+ // `CreateDlpJobRequest`.
RowNumber int64 `protobuf:"varint,2,opt,name=row_number,json=rowNumber,proto3" json:"row_number,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -1814,7 +1924,7 @@ func (m *BigQueryKey) Reset() { *m = BigQueryKey{} }
func (m *BigQueryKey) String() string { return proto.CompactTextString(m) }
func (*BigQueryKey) ProtoMessage() {}
func (*BigQueryKey) Descriptor() ([]byte, []int) {
- return fileDescriptor_ab5e749073e1398d, []int{13}
+ return fileDescriptor_ab5e749073e1398d, []int{14}
}
func (m *BigQueryKey) XXX_Unmarshal(b []byte) error {
@@ -1862,7 +1972,7 @@ func (m *DatastoreKey) Reset() { *m = DatastoreKey{} }
func (m *DatastoreKey) String() string { return proto.CompactTextString(m) }
func (*DatastoreKey) ProtoMessage() {}
func (*DatastoreKey) Descriptor() ([]byte, []int) {
- return fileDescriptor_ab5e749073e1398d, []int{14}
+ return fileDescriptor_ab5e749073e1398d, []int{15}
}
func (m *DatastoreKey) XXX_Unmarshal(b []byte) error {
@@ -1918,7 +2028,7 @@ func (m *Key) Reset() { *m = Key{} }
func (m *Key) String() string { return proto.CompactTextString(m) }
func (*Key) ProtoMessage() {}
func (*Key) Descriptor() ([]byte, []int) {
- return fileDescriptor_ab5e749073e1398d, []int{15}
+ return fileDescriptor_ab5e749073e1398d, []int{16}
}
func (m *Key) XXX_Unmarshal(b []byte) error {
@@ -1978,7 +2088,7 @@ func (m *Key_PathElement) Reset() { *m = Key_PathElement{} }
func (m *Key_PathElement) String() string { return proto.CompactTextString(m) }
func (*Key_PathElement) ProtoMessage() {}
func (*Key_PathElement) Descriptor() ([]byte, []int) {
- return fileDescriptor_ab5e749073e1398d, []int{15, 0}
+ return fileDescriptor_ab5e749073e1398d, []int{16, 0}
}
func (m *Key_PathElement) XXX_Unmarshal(b []byte) error {
@@ -2058,7 +2168,7 @@ type RecordKey struct {
// *RecordKey_BigQueryKey
Type isRecordKey_Type `protobuf_oneof:"type"`
// Values of identifying columns in the given row. Order of values matches
- // the order of field identifiers specified in the scanning request.
+ // the order of `identifying_fields` specified in the scanning request.
IdValues []string `protobuf:"bytes,5,rep,name=id_values,json=idValues,proto3" json:"id_values,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
@@ -2069,7 +2179,7 @@ func (m *RecordKey) Reset() { *m = RecordKey{} }
func (m *RecordKey) String() string { return proto.CompactTextString(m) }
func (*RecordKey) ProtoMessage() {}
func (*RecordKey) Descriptor() ([]byte, []int) {
- return fileDescriptor_ab5e749073e1398d, []int{16}
+ return fileDescriptor_ab5e749073e1398d, []int{17}
}
func (m *RecordKey) XXX_Unmarshal(b []byte) error {
@@ -2164,7 +2274,7 @@ func (m *BigQueryTable) Reset() { *m = BigQueryTable{} }
func (m *BigQueryTable) String() string { return proto.CompactTextString(m) }
func (*BigQueryTable) ProtoMessage() {}
func (*BigQueryTable) Descriptor() ([]byte, []int) {
- return fileDescriptor_ab5e749073e1398d, []int{17}
+ return fileDescriptor_ab5e749073e1398d, []int{18}
}
func (m *BigQueryTable) XXX_Unmarshal(b []byte) error {
@@ -2221,7 +2331,7 @@ func (m *BigQueryField) Reset() { *m = BigQueryField{} }
func (m *BigQueryField) String() string { return proto.CompactTextString(m) }
func (*BigQueryField) ProtoMessage() {}
func (*BigQueryField) Descriptor() ([]byte, []int) {
- return fileDescriptor_ab5e749073e1398d, []int{18}
+ return fileDescriptor_ab5e749073e1398d, []int{19}
}
func (m *BigQueryField) XXX_Unmarshal(b []byte) error {
@@ -2273,7 +2383,7 @@ func (m *EntityId) Reset() { *m = EntityId{} }
func (m *EntityId) String() string { return proto.CompactTextString(m) }
func (*EntityId) ProtoMessage() {}
func (*EntityId) Descriptor() ([]byte, []int) {
- return fileDescriptor_ab5e749073e1398d, []int{19}
+ return fileDescriptor_ab5e749073e1398d, []int{20}
}
func (m *EntityId) XXX_Unmarshal(b []byte) error {
@@ -2301,6 +2411,50 @@ func (m *EntityId) GetField() *FieldId {
return nil
}
+// Instructions regarding the table content being inspected.
+type TableOptions struct {
+ // The columns that are the primary keys for table objects included in
+ // ContentItem. A copy of this cell's value will stored alongside alongside
+ // each finding so that the finding can be traced to the specific row it came
+ // from. No more than 3 may be provided.
+ IdentifyingFields []*FieldId `protobuf:"bytes,1,rep,name=identifying_fields,json=identifyingFields,proto3" json:"identifying_fields,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *TableOptions) Reset() { *m = TableOptions{} }
+func (m *TableOptions) String() string { return proto.CompactTextString(m) }
+func (*TableOptions) ProtoMessage() {}
+func (*TableOptions) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ab5e749073e1398d, []int{21}
+}
+
+func (m *TableOptions) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_TableOptions.Unmarshal(m, b)
+}
+func (m *TableOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_TableOptions.Marshal(b, m, deterministic)
+}
+func (m *TableOptions) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_TableOptions.Merge(m, src)
+}
+func (m *TableOptions) XXX_Size() int {
+ return xxx_messageInfo_TableOptions.Size(m)
+}
+func (m *TableOptions) XXX_DiscardUnknown() {
+ xxx_messageInfo_TableOptions.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_TableOptions proto.InternalMessageInfo
+
+func (m *TableOptions) GetIdentifyingFields() []*FieldId {
+ if m != nil {
+ return m.IdentifyingFields
+ }
+ return nil
+}
+
func init() {
proto.RegisterEnum("google.privacy.dlp.v2.Likelihood", Likelihood_name, Likelihood_value)
proto.RegisterEnum("google.privacy.dlp.v2.FileType", FileType_name, FileType_value)
@@ -2330,6 +2484,8 @@ func init() {
proto.RegisterType((*BigQueryOptions)(nil), "google.privacy.dlp.v2.BigQueryOptions")
proto.RegisterType((*StorageConfig)(nil), "google.privacy.dlp.v2.StorageConfig")
proto.RegisterType((*StorageConfig_TimespanConfig)(nil), "google.privacy.dlp.v2.StorageConfig.TimespanConfig")
+ proto.RegisterType((*HybridOptions)(nil), "google.privacy.dlp.v2.HybridOptions")
+ proto.RegisterMapType((map[string]string)(nil), "google.privacy.dlp.v2.HybridOptions.LabelsEntry")
proto.RegisterType((*BigQueryKey)(nil), "google.privacy.dlp.v2.BigQueryKey")
proto.RegisterType((*DatastoreKey)(nil), "google.privacy.dlp.v2.DatastoreKey")
proto.RegisterType((*Key)(nil), "google.privacy.dlp.v2.Key")
@@ -2338,6 +2494,7 @@ func init() {
proto.RegisterType((*BigQueryTable)(nil), "google.privacy.dlp.v2.BigQueryTable")
proto.RegisterType((*BigQueryField)(nil), "google.privacy.dlp.v2.BigQueryField")
proto.RegisterType((*EntityId)(nil), "google.privacy.dlp.v2.EntityId")
+ proto.RegisterType((*TableOptions)(nil), "google.privacy.dlp.v2.TableOptions")
}
func init() {
@@ -2345,135 +2502,145 @@ func init() {
}
var fileDescriptor_ab5e749073e1398d = []byte{
- // 2068 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x72, 0x23, 0x49,
- 0x11, 0x56, 0x4b, 0x96, 0x25, 0xa5, 0x7e, 0x2c, 0x97, 0x3d, 0x1b, 0xb2, 0x60, 0x76, 0xbc, 0xf2,
- 0x30, 0x6b, 0x06, 0x42, 0x02, 0x2f, 0x04, 0xcc, 0x2e, 0x2c, 0x48, 0x96, 0x3c, 0x12, 0xfe, 0x91,
- 0x28, 0x69, 0x3c, 0x3f, 0x98, 0x68, 0x5a, 0xea, 0x92, 0xdc, 0x3b, 0xad, 0xee, 0xa6, 0xbb, 0x64,
- 0x5b, 0x41, 0x70, 0xe0, 0xc0, 0x99, 0x0b, 0x8f, 0x40, 0x04, 0x11, 0x04, 0x4f, 0x00, 0x77, 0x0e,
- 0x3c, 0x04, 0x11, 0x7b, 0x24, 0x78, 0x09, 0xa2, 0x7e, 0xba, 0xd5, 0xd2, 0x58, 0x33, 0xf2, 0xc4,
- 0xdc, 0xba, 0xb2, 0xf2, 0xcb, 0xaa, 0xcc, 0xfc, 0x2a, 0x2b, 0xab, 0x61, 0x6f, 0x64, 0xdb, 0x23,
- 0x93, 0x54, 0x1c, 0xd7, 0xb8, 0xd2, 0x06, 0xd3, 0x8a, 0x6e, 0x3a, 0x95, 0xab, 0x83, 0x8a, 0x47,
- 0x6d, 0x57, 0x1b, 0x91, 0xb2, 0xe3, 0xda, 0xd4, 0x46, 0xf7, 0x84, 0x52, 0x59, 0x2a, 0x95, 0x75,
- 0xd3, 0x29, 0x5f, 0x1d, 0x14, 0x77, 0x24, 0x56, 0x73, 0x8c, 0x8a, 0x4b, 0x3c, 0x7b, 0xe2, 0x0e,
- 0x24, 0xa2, 0xf8, 0x20, 0x30, 0x6b, 0x53, 0xbb, 0x3f, 0x19, 0x56, 0xa8, 0x31, 0x26, 0x1e, 0xd5,
- 0xc6, 0x8e, 0x50, 0x28, 0x7d, 0x0c, 0xc9, 0x96, 0x35, 0xb4, 0x7b, 0x53, 0x87, 0x20, 0x04, 0x6b,
- 0x96, 0x36, 0x26, 0x05, 0x65, 0x57, 0xd9, 0x4f, 0x61, 0xfe, 0x5d, 0xfa, 0x35, 0x40, 0x97, 0xda,
- 0x2e, 0xd1, 0x97, 0x69, 0xa0, 0x2f, 0x20, 0x3d, 0x70, 0x89, 0x46, 0x89, 0xca, 0x6c, 0x17, 0xa2,
- 0xbb, 0xca, 0x7e, 0xfa, 0xa0, 0x58, 0x0e, 0xb6, 0x2a, 0x16, 0x2e, 0xf7, 0xfc, 0x85, 0x31, 0x08,
- 0x75, 0x26, 0x28, 0x7d, 0x9d, 0x85, 0xdc, 0xe1, 0xc4, 0xa3, 0xf6, 0x38, 0xd8, 0xc5, 0x4f, 0x20,
- 0x65, 0x58, 0x43, 0x5b, 0xa5, 0x53, 0x47, 0x2c, 0x94, 0x3e, 0x78, 0x50, 0xbe, 0xd5, 0xf1, 0xb2,
- 0x8f, 0xc1, 0x49, 0xc3, 0x47, 0x57, 0x01, 0x4c, 0xe3, 0x35, 0x31, 0x8d, 0x4b, 0xdb, 0xd6, 0x0b,
- 0xeb, 0xbb, 0xca, 0x7e, 0xee, 0xe0, 0x93, 0x25, 0xf0, 0x93, 0x40, 0x11, 0x87, 0x40, 0x08, 0x03,
- 0xe8, 0xc6, 0x80, 0x1a, 0xb6, 0xa5, 0xb9, 0x53, 0xe9, 0xcf, 0xf7, 0x96, 0x98, 0x98, 0xdf, 0x7b,
- 0xb9, 0x1e, 0xe0, 0x9a, 0x11, 0x1c, 0xb2, 0x82, 0x0e, 0x21, 0xee, 0x92, 0x11, 0xb9, 0x29, 0xc4,
- 0xb8, 0xb9, 0xef, 0xac, 0x66, 0x0e, 0x33, 0x48, 0x33, 0x82, 0x05, 0x16, 0x5d, 0x40, 0xce, 0x9b,
- 0xb8, 0xae, 0x3d, 0xe2, 0xc1, 0x66, 0xe1, 0x59, 0xe3, 0xd6, 0x3e, 0x5b, 0xcd, 0x5a, 0xd7, 0xc7,
- 0xb2, 0x51, 0x33, 0x82, 0xb3, 0x5e, 0x58, 0x80, 0xea, 0x90, 0xf6, 0x78, 0xa6, 0x85, 0xe9, 0x38,
- 0x37, 0xbd, 0x2c, 0x74, 0x33, 0x4e, 0x30, 0x47, 0xbd, 0x19, 0x43, 0x2e, 0x60, 0x43, 0x27, 0x94,
- 0x70, 0xc7, 0x55, 0x77, 0x62, 0x12, 0xaf, 0x90, 0xd8, 0x8d, 0xad, 0xbe, 0xc9, 0xba, 0x0f, 0xc6,
- 0x13, 0x93, 0xe0, 0x9c, 0x1e, 0x1e, 0x7a, 0xe8, 0x15, 0xe4, 0xc8, 0xcd, 0xc0, 0x9c, 0x78, 0xcc,
- 0x3a, 0xdf, 0x66, 0x92, 0x67, 0x78, 0x45, 0xe3, 0x0d, 0x1f, 0xcb, 0x49, 0x93, 0x25, 0xe1, 0x61,
- 0xf1, 0x7f, 0x0a, 0xc0, 0x2c, 0x7f, 0xe8, 0x05, 0xa4, 0xae, 0x6d, 0x57, 0x57, 0x4d, 0xc3, 0xa3,
- 0x92, 0x86, 0x4f, 0xee, 0x4a, 0x82, 0xf2, 0x73, 0xdb, 0xd5, 0x4f, 0x0c, 0x8f, 0x36, 0x23, 0x38,
- 0x79, 0x2d, 0xbf, 0xd1, 0x73, 0x40, 0x03, 0xd3, 0x9e, 0xe8, 0xaa, 0x3c, 0xdc, 0xaa, 0xa3, 0xd1,
- 0x4b, 0x49, 0x8c, 0x4f, 0x97, 0x2d, 0xc1, 0x00, 0x5d, 0xa1, 0xdf, 0xd1, 0xe8, 0x65, 0x33, 0x82,
- 0xf3, 0x83, 0x05, 0x59, 0x71, 0x17, 0x92, 0xfe, 0x82, 0x68, 0x1b, 0xe2, 0x6c, 0x41, 0xaf, 0xa0,
- 0xec, 0xc6, 0xf6, 0x53, 0x58, 0x0c, 0x6a, 0x49, 0x58, 0x17, 0xe5, 0xa1, 0x78, 0x04, 0x71, 0xce,
- 0x2e, 0x54, 0x80, 0x84, 0xa3, 0x51, 0x4a, 0x5c, 0x4b, 0x9e, 0x6a, 0x7f, 0x88, 0xf6, 0x20, 0x3b,
- 0x72, 0xed, 0x89, 0xa3, 0x1a, 0x96, 0x4e, 0x6e, 0x88, 0x57, 0x88, 0xee, 0xc6, 0xf6, 0xe3, 0x38,
- 0xc3, 0x85, 0x2d, 0x21, 0x2b, 0x6e, 0x40, 0x76, 0x8e, 0x57, 0xc5, 0x7f, 0xc4, 0x21, 0x3b, 0x97,
- 0x44, 0xa4, 0x43, 0xe6, 0xd2, 0xa6, 0x3c, 0x98, 0x8c, 0x10, 0x32, 0x98, 0x3f, 0x7b, 0x0f, 0x3e,
- 0x94, 0x9b, 0xc2, 0x0e, 0xfb, 0x6e, 0x46, 0x70, 0xfa, 0x72, 0x36, 0x2c, 0x76, 0x21, 0xd5, 0x71,
- 0xed, 0x1b, 0x63, 0x6c, 0xd0, 0x29, 0xdb, 0xfa, 0xb5, 0x61, 0xe9, 0xf6, 0xb5, 0xda, 0x27, 0x43,
- 0xdb, 0x15, 0x6b, 0xc6, 0x71, 0x46, 0x08, 0x6b, 0x5c, 0x86, 0x3e, 0x01, 0x39, 0x56, 0xb5, 0x21,
- 0x25, 0x2e, 0x3f, 0xe9, 0x71, 0x9c, 0x16, 0xb2, 0x2a, 0x13, 0x15, 0xff, 0xaa, 0xc0, 0xf6, 0xac,
- 0x4a, 0x54, 0xf5, 0xaf, 0x26, 0x1e, 0x1d, 0x13, 0x8b, 0xa2, 0x33, 0xc8, 0x0f, 0x8d, 0x1b, 0xc2,
- 0xe8, 0x11, 0x14, 0x1b, 0x65, 0xc5, 0x62, 0xd3, 0x8c, 0xe0, 0x0d, 0x0e, 0x9e, 0x89, 0xd0, 0xf7,
- 0x61, 0xcb, 0x25, 0xa6, 0x46, 0x8d, 0x2b, 0x12, 0x36, 0xc9, 0xb7, 0xd4, 0x8c, 0x60, 0xe4, 0x4f,
- 0xce, 0x20, 0xb5, 0x0c, 0x80, 0x16, 0x6c, 0xa8, 0xf8, 0xcf, 0x28, 0xa4, 0x43, 0xd1, 0x41, 0x1d,
- 0xc8, 0x06, 0x41, 0xe7, 0x85, 0x47, 0xb9, 0x73, 0xe1, 0xc1, 0x7e, 0xda, 0x04, 0x51, 0x7e, 0x05,
- 0x29, 0xc7, 0x0f, 0xb0, 0xac, 0x8a, 0x3f, 0x7d, 0x9f, 0x1c, 0x06, 0x59, 0xc2, 0x33, 0x7b, 0xe8,
- 0xf7, 0x70, 0x6f, 0xe6, 0xb6, 0x3a, 0xf3, 0x4b, 0x1e, 0x8b, 0xe6, 0xfb, 0x2c, 0x74, 0x5b, 0xe2,
- 0xf0, 0xb6, 0x79, 0x8b, 0xb4, 0xb6, 0x0e, 0x6b, 0xac, 0x9a, 0x94, 0x8e, 0x21, 0x3b, 0x57, 0x23,
- 0xd0, 0xc7, 0x50, 0x6c, 0xbc, 0x38, 0x3c, 0x79, 0xd6, 0x6d, 0xb5, 0xcf, 0xd4, 0xde, 0xcb, 0x4e,
- 0x43, 0x7d, 0x76, 0xd6, 0xed, 0x34, 0x0e, 0x5b, 0x47, 0xad, 0x46, 0x3d, 0x1f, 0x41, 0x45, 0xf8,
- 0x68, 0x61, 0x9e, 0x0f, 0xeb, 0x8d, 0xbc, 0x12, 0x18, 0xbd, 0x0f, 0x89, 0x23, 0x83, 0x98, 0x7a,
- 0x4b, 0xbf, 0xf5, 0x86, 0x6d, 0x43, 0xba, 0xa3, 0xb9, 0xd4, 0x60, 0xfb, 0x6e, 0xe9, 0xe8, 0x3e,
- 0x80, 0xe3, 0xda, 0x5f, 0x91, 0x01, 0x55, 0x0d, 0x41, 0x80, 0x14, 0x0f, 0x14, 0x93, 0xb4, 0x74,
- 0x46, 0x5a, 0x86, 0xf2, 0x1c, 0x6d, 0x40, 0x98, 0xc2, 0x1a, 0x57, 0x48, 0x07, 0xb2, 0x96, 0x5e,
- 0x7a, 0x08, 0xb9, 0x63, 0xc3, 0xd2, 0x1b, 0x37, 0x8e, 0x4b, 0x3c, 0xe6, 0xc9, 0xad, 0xcb, 0xfe,
- 0x59, 0x81, 0x7c, 0x5d, 0xa3, 0x1a, 0xaf, 0xdd, 0x6d, 0x87, 0xad, 0xee, 0xa1, 0x06, 0x64, 0x1c,
- 0x7f, 0x2f, 0xcc, 0xba, 0x20, 0x4d, 0x69, 0x49, 0xf4, 0x43, 0xdb, 0xc6, 0x69, 0x27, 0xe4, 0xc3,
- 0x13, 0x58, 0x7b, 0x6d, 0x58, 0xba, 0x64, 0xc9, 0xb7, 0x96, 0xc0, 0xe7, 0x37, 0x89, 0x39, 0xa4,
- 0xf4, 0x47, 0x05, 0x0a, 0xe1, 0x62, 0xc7, 0xb9, 0x77, 0x64, 0x98, 0xa4, 0x4b, 0x28, 0x7a, 0x00,
- 0xe9, 0xfe, 0x64, 0xf0, 0x9a, 0x50, 0x35, 0xe4, 0x0e, 0x08, 0xd1, 0x19, 0xeb, 0x45, 0xf6, 0x20,
- 0x6b, 0x58, 0x03, 0x73, 0xa2, 0x13, 0xc9, 0xfa, 0x28, 0xaf, 0x7e, 0x19, 0x29, 0x14, 0x44, 0xde,
- 0x03, 0x51, 0xf9, 0x03, 0xa5, 0x98, 0x50, 0x92, 0x42, 0xae, 0x54, 0xfa, 0x7a, 0x0d, 0xb6, 0xc2,
- 0xfb, 0xf0, 0x23, 0x74, 0x0a, 0xc9, 0xa1, 0x61, 0x12, 0xd5, 0x23, 0xfe, 0xad, 0x70, 0xb0, 0x42,
- 0xc9, 0x96, 0xe8, 0xb2, 0x74, 0x04, 0x27, 0x86, 0xd2, 0xa3, 0x0a, 0x6c, 0xf7, 0xa7, 0x94, 0x78,
- 0xaa, 0xc9, 0xce, 0x81, 0xea, 0x10, 0x57, 0x65, 0x53, 0x3c, 0xad, 0x31, 0xbc, 0xc9, 0xe7, 0x4e,
- 0xd8, 0x54, 0x87, 0xb8, 0x0c, 0x8c, 0xbe, 0x84, 0x6f, 0xde, 0x06, 0x60, 0x1f, 0x03, 0x76, 0x5e,
- 0x92, 0xbc, 0x88, 0x15, 0xde, 0x00, 0x76, 0xc4, 0x3c, 0xfa, 0x12, 0x80, 0xeb, 0x33, 0x66, 0x7a,
- 0x85, 0xf8, 0x6e, 0x6c, 0x3f, 0xb7, 0xb4, 0xbd, 0x62, 0x38, 0x7e, 0x53, 0xa6, 0x86, 0xf2, 0xcb,
- 0x43, 0x17, 0x90, 0xf5, 0xb4, 0xb1, 0x63, 0x12, 0x75, 0x4c, 0xe8, 0x65, 0xd0, 0x62, 0xfd, 0xe8,
- 0x0e, 0x41, 0xe8, 0x72, 0xfc, 0x29, 0x87, 0xe3, 0x8c, 0x17, 0x1a, 0xa1, 0x32, 0x6c, 0xb1, 0xa5,
- 0x42, 0xde, 0x71, 0xa7, 0x12, 0xdc, 0xa9, 0x4d, 0x3e, 0xe5, 0x3b, 0xc5, 0x26, 0x8a, 0x2e, 0x3b,
- 0x5a, 0x22, 0x92, 0x79, 0x88, 0x4d, 0x5c, 0x53, 0x72, 0x82, 0x7d, 0xa2, 0x67, 0x90, 0xe3, 0xf9,
- 0x55, 0x83, 0x84, 0x09, 0x3e, 0x56, 0x56, 0xd8, 0x6b, 0x98, 0x76, 0x38, 0xe3, 0x86, 0x46, 0xa5,
- 0x26, 0x64, 0xc2, 0x1e, 0xa0, 0xfb, 0xb0, 0xd3, 0xad, 0x9e, 0x76, 0x4e, 0x1a, 0xea, 0x69, 0xa3,
- 0xd7, 0x6c, 0xd7, 0x17, 0x2a, 0x44, 0x02, 0x62, 0xbd, 0x76, 0x27, 0xaf, 0xa0, 0x3c, 0x64, 0x70,
- 0xf5, 0xac, 0xde, 0x3e, 0x55, 0xbb, 0xbd, 0x2a, 0xee, 0xe5, 0xa3, 0xa5, 0x4f, 0xe7, 0x29, 0xb6,
- 0xd4, 0x93, 0xd2, 0x23, 0xc8, 0x2f, 0x36, 0x00, 0xec, 0x4c, 0xf3, 0xbe, 0x41, 0x9e, 0x69, 0xf6,
- 0x5d, 0xfa, 0x6f, 0x0c, 0x36, 0x6a, 0xc6, 0xe8, 0x97, 0x13, 0xe2, 0x4e, 0x67, 0x84, 0xdd, 0xa0,
- 0x5a, 0xdf, 0x64, 0x5c, 0x1f, 0x12, 0x97, 0x58, 0x03, 0xff, 0x02, 0x7e, 0xb8, 0x24, 0x0c, 0xbe,
- 0x81, 0x1e, 0x43, 0xe1, 0x1c, 0x07, 0x63, 0x1f, 0x8b, 0x4e, 0x01, 0x19, 0x3a, 0xb1, 0xa8, 0x31,
- 0x9c, 0x1a, 0xd6, 0x48, 0x1d, 0xb2, 0xc2, 0x26, 0x3a, 0x83, 0xf4, 0xc1, 0xc7, 0x4b, 0x79, 0xc4,
- 0xab, 0x1f, 0xde, 0x0c, 0x21, 0xb9, 0xcc, 0x63, 0xd5, 0xce, 0xb5, 0xaf, 0x65, 0xbe, 0x79, 0xb1,
- 0x8f, 0xe1, 0x14, 0x93, 0xf0, 0x34, 0xa3, 0xef, 0x02, 0x9a, 0x4d, 0x07, 0x74, 0x58, 0xe7, 0x74,
- 0xc8, 0x07, 0x6a, 0x3e, 0xb7, 0x5f, 0x2c, 0x72, 0x73, 0xed, 0xad, 0xcd, 0xe1, 0x42, 0xa4, 0xde,
- 0xc6, 0xcb, 0xa7, 0xb0, 0x21, 0xab, 0x83, 0xee, 0xbb, 0x1c, 0x5f, 0xc9, 0xe5, 0x9c, 0x0f, 0x13,
- 0xfe, 0x7e, 0x40, 0xf2, 0xfc, 0x3d, 0x0e, 0x59, 0xc9, 0x87, 0x43, 0xdb, 0x1a, 0x1a, 0x23, 0x74,
- 0x0e, 0x9b, 0xba, 0x5f, 0xd0, 0x55, 0x5b, 0x38, 0x25, 0x29, 0xbf, 0xac, 0xad, 0x5c, 0xbc, 0x00,
- 0x58, 0x5b, 0xa9, 0x2f, 0x5e, 0x0a, 0xbf, 0x81, 0x7b, 0xf3, 0xfd, 0xaa, 0x6f, 0x5b, 0xdc, 0xcd,
- 0x8f, 0x57, 0x3f, 0xfa, 0xcd, 0x08, 0xde, 0x1a, 0xdc, 0x52, 0x54, 0x7b, 0xb0, 0xd9, 0x37, 0x46,
- 0xea, 0x6f, 0x59, 0x36, 0x02, 0xeb, 0xe2, 0x6d, 0xf3, 0x68, 0xb5, 0xe4, 0xb1, 0x9e, 0xaa, 0xbf,
- 0xc0, 0xfc, 0x0b, 0xd8, 0xe0, 0xaf, 0x5d, 0x47, 0xb3, 0xd4, 0x01, 0x0f, 0x11, 0x67, 0xce, 0xf2,
- 0xa7, 0xc8, 0x5c, 0x38, 0xc5, 0x83, 0xd5, 0xd1, 0x2c, 0x31, 0xc4, 0x39, 0x3a, 0x37, 0x2e, 0xfe,
- 0x25, 0x0a, 0xb9, 0x79, 0x15, 0xf4, 0x04, 0xc0, 0xa3, 0x9a, 0x4b, 0xc5, 0x43, 0x58, 0x79, 0xe7,
- 0x43, 0x38, 0xc5, 0xb5, 0xd9, 0x18, 0xfd, 0x10, 0x92, 0xc4, 0xd2, 0x57, 0x7d, 0x41, 0x27, 0x88,
- 0xa5, 0x73, 0xd8, 0x53, 0xe9, 0x22, 0x93, 0x0a, 0x62, 0xca, 0xa4, 0xbc, 0x93, 0x97, 0x01, 0x8c,
- 0x4b, 0xd0, 0x73, 0xf8, 0x36, 0xb1, 0x78, 0x99, 0xd0, 0x26, 0xd4, 0x56, 0x1d, 0xdb, 0x99, 0xb0,
- 0x86, 0xd3, 0xb6, 0x54, 0x7b, 0xa8, 0x2e, 0x46, 0x91, 0x65, 0x26, 0x89, 0x1f, 0x0a, 0x40, 0x75,
- 0x42, 0xed, 0x4e, 0xa0, 0xde, 0x1e, 0xce, 0xc7, 0x24, 0x68, 0x82, 0x7e, 0x07, 0x69, 0x3f, 0x65,
- 0xc7, 0x64, 0xfa, 0xa1, 0xab, 0x92, 0x28, 0x23, 0xaa, 0x35, 0x19, 0xf7, 0x65, 0x23, 0x2f, 0xca,
- 0xc8, 0x19, 0x17, 0x94, 0x5a, 0x90, 0x09, 0x98, 0xce, 0x56, 0x7f, 0x02, 0xc0, 0x0a, 0x11, 0x9d,
- 0xaa, 0xaf, 0xc9, 0xf4, 0xcd, 0x44, 0xcd, 0x77, 0x29, 0x64, 0x8a, 0x53, 0x42, 0xfb, 0x98, 0x4c,
- 0x4b, 0xff, 0x51, 0x20, 0xc6, 0x4c, 0x7c, 0xa0, 0x4e, 0xe9, 0x73, 0x59, 0xc5, 0x45, 0x01, 0x7d,
- 0xb4, 0x7c, 0x0f, 0x65, 0x56, 0xf4, 0x1b, 0x26, 0xe1, 0x4d, 0x2c, 0xc7, 0x14, 0x7b, 0xac, 0x71,
- 0x0c, 0x84, 0xec, 0x42, 0xe0, 0x4d, 0x97, 0xbc, 0x10, 0xd8, 0x37, 0xca, 0x43, 0x54, 0x36, 0x91,
- 0xb1, 0x66, 0x04, 0x47, 0x0d, 0x1d, 0x6d, 0xcb, 0x56, 0x90, 0xd1, 0x24, 0xd5, 0x8c, 0x88, 0x66,
- 0xb0, 0x96, 0x82, 0x84, 0x21, 0xde, 0xfd, 0xa5, 0x7f, 0x29, 0x90, 0xc2, 0x64, 0x60, 0xbb, 0x3a,
- 0x73, 0xf3, 0x17, 0x90, 0x9d, 0xd5, 0x14, 0x16, 0x2c, 0x41, 0xce, 0xbd, 0x77, 0xd5, 0x93, 0x63,
- 0x32, 0x6d, 0x46, 0x70, 0x46, 0x0f, 0x47, 0xbd, 0x09, 0xd9, 0xd9, 0x29, 0x67, 0xb6, 0x62, 0x6f,
- 0x8d, 0x59, 0x88, 0x2e, 0xec, 0xad, 0xd7, 0x0f, 0xb1, 0xe7, 0x1b, 0x90, 0x32, 0x74, 0xf5, 0x4a,
- 0x33, 0x27, 0xb2, 0x87, 0x49, 0xe1, 0xa4, 0xa1, 0x9f, 0xf3, 0x71, 0xc0, 0xb8, 0x4b, 0xc8, 0xce,
- 0x91, 0x66, 0xa1, 0xb3, 0x56, 0x16, 0x3b, 0xeb, 0xfb, 0x00, 0x7c, 0xbb, 0x24, 0xdc, 0x78, 0x4b,
- 0x49, 0x4b, 0x47, 0x3b, 0x90, 0x14, 0x8c, 0x35, 0xc4, 0x19, 0x4b, 0xe1, 0x04, 0x1f, 0xb7, 0xf4,
- 0xd2, 0x1f, 0x94, 0xd9, 0x52, 0xe2, 0x38, 0x7d, 0x0e, 0x71, 0x3e, 0x79, 0x27, 0x52, 0x0b, 0x08,
- 0xfa, 0x01, 0xc4, 0xc5, 0x49, 0x8e, 0xae, 0x74, 0x92, 0x85, 0x72, 0xe9, 0xe7, 0x90, 0x6c, 0x70,
- 0x92, 0xb6, 0xf4, 0x99, 0x05, 0xe5, 0x0e, 0x16, 0x1e, 0x53, 0x80, 0xd0, 0x83, 0xb4, 0x08, 0x1f,
- 0x9d, 0xb4, 0x8e, 0x1b, 0x27, 0xad, 0x66, 0xfb, 0x8d, 0x5b, 0x69, 0x13, 0xb2, 0xe7, 0x0d, 0xfc,
- 0x52, 0x7d, 0x76, 0xc6, 0x55, 0x5e, 0xe6, 0x15, 0x94, 0x81, 0x64, 0x30, 0x8a, 0xb2, 0x51, 0xa7,
- 0xdd, 0xed, 0xb6, 0x6a, 0x27, 0x8d, 0x7c, 0x0c, 0x01, 0xac, 0xcb, 0x99, 0x35, 0xb4, 0x01, 0x69,
- 0x0e, 0x95, 0x82, 0xf8, 0xe3, 0x57, 0x90, 0xf4, 0xdb, 0x4c, 0xb4, 0x03, 0xf7, 0x8e, 0x5a, 0x27,
- 0x8d, 0xdb, 0xde, 0x59, 0x1b, 0x90, 0xae, 0xb5, 0xce, 0xaa, 0xf8, 0xa5, 0xca, 0x34, 0xf2, 0x0a,
- 0xca, 0x42, 0xaa, 0xd7, 0x78, 0xd1, 0x13, 0xc3, 0x28, 0x4a, 0x41, 0xbc, 0x75, 0x5a, 0x7d, 0xca,
- 0x96, 0x4b, 0xc2, 0x5a, 0xf5, 0x1c, 0xb7, 0xf3, 0x89, 0xda, 0x9f, 0x14, 0xd8, 0x19, 0xd8, 0xe3,
- 0xdb, 0xdd, 0xaf, 0x41, 0xdd, 0x74, 0xfc, 0x86, 0x4a, 0x79, 0xf5, 0x63, 0xa9, 0x34, 0xb2, 0x4d,
- 0xcd, 0x1a, 0x95, 0x6d, 0x77, 0x54, 0x19, 0x11, 0x8b, 0xd7, 0xde, 0x8a, 0x98, 0xd2, 0x1c, 0xc3,
- 0x5b, 0xf8, 0x3d, 0xfb, 0x85, 0x6e, 0x3a, 0x7f, 0x8b, 0x6e, 0x3d, 0x15, 0x50, 0x7e, 0xe1, 0x95,
- 0xeb, 0xa6, 0x53, 0x3e, 0x3f, 0xf8, 0xb7, 0x2f, 0xbd, 0xe0, 0xd2, 0x8b, 0xba, 0xe9, 0x5c, 0x9c,
- 0x1f, 0xf4, 0xd7, 0xb9, 0xc1, 0xcf, 0xfe, 0x1f, 0x00, 0x00, 0xff, 0xff, 0x18, 0x05, 0x00, 0xc7,
- 0xee, 0x15, 0x00, 0x00,
+ // 2228 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x73, 0x1b, 0x49,
+ 0x15, 0xd7, 0x48, 0x96, 0x2d, 0x3d, 0xfd, 0xb1, 0xdc, 0x49, 0xb6, 0x14, 0x2d, 0x49, 0xbc, 0x4a,
+ 0xc8, 0x9a, 0x40, 0xc9, 0xe0, 0x85, 0x62, 0x93, 0x65, 0x17, 0xec, 0x48, 0xce, 0x08, 0xff, 0x13,
+ 0x2d, 0xc5, 0xf9, 0x83, 0xb7, 0x86, 0x91, 0xa6, 0x25, 0xf7, 0x7a, 0x3c, 0x33, 0x3b, 0xd3, 0x93,
+ 0x58, 0x45, 0x71, 0xe0, 0xc0, 0x99, 0x0b, 0x1f, 0x81, 0x2a, 0xaa, 0xf8, 0x08, 0x70, 0xe0, 0xc6,
+ 0x81, 0x0f, 0x41, 0xd5, 0x1e, 0x29, 0x3e, 0x02, 0x17, 0xaa, 0xff, 0xcc, 0x68, 0xa4, 0x58, 0x59,
+ 0x39, 0x95, 0xdb, 0xbc, 0xd7, 0xef, 0xf7, 0xba, 0xdf, 0xeb, 0x5f, 0xbf, 0x7e, 0x3d, 0x70, 0x77,
+ 0xe4, 0xba, 0x23, 0x9b, 0x6c, 0x7a, 0x3e, 0x7d, 0x65, 0x0e, 0xc6, 0x9b, 0x96, 0xed, 0x6d, 0xbe,
+ 0xda, 0xda, 0x0c, 0x98, 0xeb, 0x9b, 0x23, 0xd2, 0xf0, 0x7c, 0x97, 0xb9, 0xe8, 0x86, 0x34, 0x6a,
+ 0x28, 0xa3, 0x86, 0x65, 0x7b, 0x8d, 0x57, 0x5b, 0xb5, 0x9b, 0x0a, 0x6b, 0x7a, 0x74, 0xd3, 0x27,
+ 0x81, 0x1b, 0xfa, 0x03, 0x85, 0xa8, 0xdd, 0x89, 0xdd, 0xba, 0xcc, 0xed, 0x87, 0xc3, 0x4d, 0x46,
+ 0xcf, 0x49, 0xc0, 0xcc, 0x73, 0x4f, 0x1a, 0xd4, 0x6f, 0x43, 0xae, 0xed, 0x0c, 0xdd, 0xde, 0xd8,
+ 0x23, 0x08, 0xc1, 0x92, 0x63, 0x9e, 0x93, 0xaa, 0xb6, 0xae, 0x6d, 0xe4, 0xb1, 0xf8, 0xae, 0x7f,
+ 0x09, 0xd0, 0x65, 0xae, 0x4f, 0xac, 0x79, 0x16, 0xe8, 0x33, 0x28, 0x0c, 0x7c, 0x62, 0x32, 0x62,
+ 0x70, 0xdf, 0xd5, 0xf4, 0xba, 0xb6, 0x51, 0xd8, 0xaa, 0x35, 0xe2, 0xa5, 0xca, 0x89, 0x1b, 0xbd,
+ 0x68, 0x62, 0x0c, 0xd2, 0x9c, 0x2b, 0xea, 0xdf, 0x94, 0xa0, 0xfc, 0x38, 0x0c, 0x98, 0x7b, 0x1e,
+ 0xaf, 0xe2, 0x67, 0x90, 0xa7, 0xce, 0xd0, 0x35, 0xd8, 0xd8, 0x93, 0x13, 0x15, 0xb6, 0xee, 0x34,
+ 0x2e, 0x0d, 0xbc, 0x11, 0x61, 0x70, 0x8e, 0x46, 0xe8, 0x6d, 0x00, 0x9b, 0x9e, 0x11, 0x9b, 0x9e,
+ 0xba, 0xae, 0x55, 0x5d, 0x5e, 0xd7, 0x36, 0xca, 0x5b, 0x1f, 0xcd, 0x81, 0xef, 0xc7, 0x86, 0x38,
+ 0x01, 0x42, 0x18, 0xc0, 0xa2, 0x03, 0x46, 0x5d, 0xc7, 0xf4, 0xc7, 0x2a, 0x9e, 0x1f, 0xce, 0x71,
+ 0x31, 0xbd, 0xf6, 0x46, 0x33, 0xc6, 0xe9, 0x29, 0x9c, 0xf0, 0x82, 0x1e, 0x43, 0xd6, 0x27, 0x23,
+ 0x72, 0x51, 0xcd, 0x08, 0x77, 0xdf, 0x5f, 0xcc, 0x1d, 0xe6, 0x10, 0x3d, 0x85, 0x25, 0x16, 0x9d,
+ 0x40, 0x39, 0x08, 0x7d, 0xdf, 0x1d, 0x89, 0x64, 0xf3, 0xf4, 0x2c, 0x09, 0x6f, 0x9f, 0x2c, 0xe6,
+ 0xad, 0x1b, 0x61, 0xb9, 0xa4, 0xa7, 0x70, 0x29, 0x48, 0x2a, 0x50, 0x13, 0x0a, 0x81, 0xd8, 0x69,
+ 0xe9, 0x3a, 0x2b, 0x5c, 0xcf, 0x4b, 0xdd, 0x84, 0x13, 0x3c, 0xd0, 0x60, 0xc2, 0x90, 0x13, 0x58,
+ 0xb5, 0x08, 0x23, 0x22, 0x70, 0xc3, 0x0f, 0x6d, 0x12, 0x54, 0x57, 0xd6, 0x33, 0x8b, 0x2f, 0xb2,
+ 0x19, 0x81, 0x71, 0x68, 0x13, 0x5c, 0xb6, 0x92, 0x62, 0x80, 0x5e, 0x42, 0x99, 0x5c, 0x0c, 0xec,
+ 0x30, 0xe0, 0xde, 0xc5, 0x32, 0x73, 0x62, 0x87, 0x17, 0x74, 0xde, 0x8a, 0xb0, 0x82, 0x34, 0x25,
+ 0x92, 0x14, 0x6b, 0xff, 0xd5, 0x00, 0x26, 0xfb, 0x87, 0x9e, 0x43, 0xfe, 0xb5, 0xeb, 0x5b, 0x86,
+ 0x4d, 0x03, 0xa6, 0x68, 0xf8, 0xf0, 0xaa, 0x24, 0x68, 0x3c, 0x73, 0x7d, 0x6b, 0x9f, 0x06, 0x4c,
+ 0x4f, 0xe1, 0xdc, 0x6b, 0xf5, 0x8d, 0x9e, 0x01, 0x1a, 0xd8, 0x6e, 0x68, 0x19, 0xea, 0x70, 0x1b,
+ 0x9e, 0xc9, 0x4e, 0x15, 0x31, 0x3e, 0x9e, 0x37, 0x05, 0x07, 0x74, 0xa5, 0x7d, 0xc7, 0x64, 0xa7,
+ 0x7a, 0x0a, 0x57, 0x06, 0x33, 0xba, 0xda, 0x3a, 0xe4, 0xa2, 0x09, 0xd1, 0x75, 0xc8, 0xf2, 0x09,
+ 0x83, 0xaa, 0xb6, 0x9e, 0xd9, 0xc8, 0x63, 0x29, 0xec, 0xe4, 0x60, 0x59, 0x96, 0x87, 0xda, 0x2e,
+ 0x64, 0x05, 0xbb, 0x50, 0x15, 0x56, 0x3c, 0x93, 0x31, 0xe2, 0x3b, 0xea, 0x54, 0x47, 0x22, 0xba,
+ 0x0b, 0xa5, 0x91, 0xef, 0x86, 0x9e, 0x41, 0x1d, 0x8b, 0x5c, 0x90, 0xa0, 0x9a, 0x5e, 0xcf, 0x6c,
+ 0x64, 0x71, 0x51, 0x28, 0xdb, 0x52, 0x57, 0x5b, 0x85, 0xd2, 0x14, 0xaf, 0x6a, 0x7f, 0xcb, 0x42,
+ 0x69, 0x6a, 0x13, 0x91, 0x05, 0xc5, 0x53, 0x97, 0x89, 0x64, 0x72, 0x42, 0xa8, 0x64, 0xfe, 0xfc,
+ 0x1d, 0xf8, 0xd0, 0xd0, 0xa5, 0x1f, 0xfe, 0xad, 0xa7, 0x70, 0xe1, 0x74, 0x22, 0xd6, 0xba, 0x90,
+ 0xef, 0xf8, 0xee, 0x05, 0x3d, 0xa7, 0x6c, 0xcc, 0x97, 0xfe, 0x9a, 0x3a, 0x96, 0xfb, 0xda, 0xe8,
+ 0x93, 0xa1, 0xeb, 0xcb, 0x39, 0xb3, 0xb8, 0x28, 0x95, 0x3b, 0x42, 0x87, 0x3e, 0x02, 0x25, 0x1b,
+ 0xe6, 0x90, 0x11, 0x5f, 0x9c, 0xf4, 0x2c, 0x2e, 0x48, 0xdd, 0x36, 0x57, 0xd5, 0xfe, 0xa2, 0xc1,
+ 0xf5, 0x49, 0x95, 0xd8, 0xb6, 0xbe, 0x0a, 0x03, 0x76, 0x4e, 0x1c, 0x86, 0x0e, 0xa1, 0x32, 0xa4,
+ 0x17, 0x84, 0xd3, 0x23, 0x2e, 0x36, 0xda, 0x82, 0xc5, 0x46, 0x4f, 0xe1, 0x55, 0x01, 0x9e, 0xa8,
+ 0xd0, 0x8f, 0xe0, 0x9a, 0x4f, 0x6c, 0x93, 0xd1, 0x57, 0x24, 0xe9, 0x52, 0x2c, 0x49, 0x4f, 0x61,
+ 0x14, 0x0d, 0x4e, 0x20, 0x3b, 0x45, 0x00, 0x33, 0x5e, 0x50, 0xed, 0xef, 0x69, 0x28, 0x24, 0xb2,
+ 0x83, 0x3a, 0x50, 0x8a, 0x93, 0x2e, 0x0a, 0x8f, 0x76, 0xe5, 0xc2, 0x83, 0xa3, 0x6d, 0x93, 0x44,
+ 0xf9, 0x35, 0xe4, 0xbd, 0x28, 0xc1, 0xaa, 0x2a, 0x7e, 0xfe, 0x2e, 0x7b, 0x18, 0xef, 0x12, 0x9e,
+ 0xf8, 0x43, 0xbf, 0x83, 0x1b, 0x93, 0xb0, 0x8d, 0x49, 0x5c, 0xea, 0x58, 0xe8, 0xef, 0x32, 0xd1,
+ 0x65, 0x1b, 0x87, 0xaf, 0xdb, 0x97, 0x68, 0x77, 0x96, 0x61, 0x89, 0x57, 0x93, 0xfa, 0x1e, 0x94,
+ 0xa6, 0x6a, 0x04, 0xba, 0x0d, 0xb5, 0xd6, 0xf3, 0xc7, 0xfb, 0x4f, 0xbb, 0xed, 0xa3, 0x43, 0xa3,
+ 0xf7, 0xa2, 0xd3, 0x32, 0x9e, 0x1e, 0x76, 0x3b, 0xad, 0xc7, 0xed, 0xdd, 0x76, 0xab, 0x59, 0x49,
+ 0xa1, 0x1a, 0x7c, 0x30, 0x33, 0x2e, 0xc4, 0x66, 0xab, 0xa2, 0xc5, 0x4e, 0x6f, 0xc1, 0xca, 0x2e,
+ 0x25, 0xb6, 0xd5, 0xb6, 0x2e, 0xbd, 0x61, 0x8f, 0xa0, 0xd0, 0x31, 0x7d, 0x46, 0xf9, 0xba, 0xdb,
+ 0x16, 0xba, 0x05, 0xe0, 0xf9, 0xee, 0x57, 0x64, 0xc0, 0x0c, 0x2a, 0x09, 0x90, 0x17, 0x89, 0xe2,
+ 0x9a, 0xb6, 0xc5, 0x49, 0xcb, 0x51, 0x81, 0x67, 0x0e, 0x08, 0x37, 0x58, 0x12, 0x06, 0x85, 0x58,
+ 0xd7, 0xb6, 0xea, 0xf7, 0xa0, 0xbc, 0x47, 0x1d, 0xab, 0x75, 0xe1, 0xf9, 0x24, 0xe0, 0x91, 0x5c,
+ 0x3a, 0xed, 0x9f, 0x34, 0xa8, 0x34, 0x4d, 0x66, 0x8a, 0xda, 0x7d, 0xe4, 0xf1, 0xd9, 0x03, 0xd4,
+ 0x82, 0xa2, 0x17, 0xad, 0x85, 0x7b, 0x97, 0xa4, 0xa9, 0xcf, 0xc9, 0x7e, 0x62, 0xd9, 0xb8, 0xe0,
+ 0x25, 0x62, 0x78, 0x08, 0x4b, 0x67, 0xd4, 0xb1, 0x14, 0x4b, 0xbe, 0x3b, 0x07, 0x3e, 0xbd, 0x48,
+ 0x2c, 0x20, 0xf5, 0x3f, 0x68, 0x50, 0x4d, 0x16, 0x3b, 0xc1, 0xbd, 0x5d, 0x6a, 0x93, 0x2e, 0x61,
+ 0xe8, 0x0e, 0x14, 0xfa, 0xe1, 0xe0, 0x8c, 0x30, 0x23, 0x11, 0x0e, 0x48, 0xd5, 0x21, 0xef, 0x45,
+ 0xee, 0x42, 0x89, 0x3a, 0x03, 0x3b, 0xb4, 0x88, 0x62, 0x7d, 0x5a, 0x54, 0xbf, 0xa2, 0x52, 0x4a,
+ 0x22, 0xdf, 0x05, 0x59, 0xf9, 0x63, 0xa3, 0x8c, 0x34, 0x52, 0x4a, 0x61, 0x54, 0xff, 0x66, 0x09,
+ 0xae, 0x25, 0xd7, 0x11, 0x65, 0xe8, 0x00, 0x72, 0x43, 0x6a, 0x13, 0x23, 0x20, 0xd1, 0xad, 0xb0,
+ 0xb5, 0x40, 0xc9, 0x56, 0xe8, 0x86, 0x0a, 0x04, 0xaf, 0x0c, 0x55, 0x44, 0x9b, 0x70, 0xbd, 0x3f,
+ 0x66, 0x24, 0x30, 0x6c, 0x7e, 0x0e, 0x0c, 0x8f, 0xf8, 0x06, 0x1f, 0x12, 0xdb, 0x9a, 0xc1, 0x6b,
+ 0x62, 0x6c, 0x9f, 0x0f, 0x75, 0x88, 0xcf, 0xc1, 0xe8, 0x0b, 0xf8, 0xce, 0x65, 0x00, 0xfe, 0x31,
+ 0xe0, 0xe7, 0x25, 0x27, 0x8a, 0x58, 0xf5, 0x0d, 0x60, 0x47, 0x8e, 0xa3, 0x2f, 0x00, 0x84, 0x3d,
+ 0x67, 0x66, 0x50, 0xcd, 0xae, 0x67, 0x36, 0xca, 0x73, 0xdb, 0x2b, 0x8e, 0x13, 0x37, 0x65, 0x7e,
+ 0xa8, 0xbe, 0x02, 0x74, 0x02, 0xa5, 0xc0, 0x3c, 0xf7, 0x6c, 0x62, 0x9c, 0x13, 0x76, 0x1a, 0xb7,
+ 0x58, 0x3f, 0xbd, 0x42, 0x12, 0xba, 0x02, 0x7f, 0x20, 0xe0, 0xb8, 0x18, 0x24, 0x24, 0xd4, 0x80,
+ 0x6b, 0x7c, 0xaa, 0x44, 0x74, 0x22, 0xa8, 0x15, 0x11, 0xd4, 0x9a, 0x18, 0x8a, 0x82, 0xe2, 0x03,
+ 0x35, 0x9f, 0x1f, 0x2d, 0x99, 0xc9, 0x0a, 0x64, 0x42, 0xdf, 0x56, 0x9c, 0xe0, 0x9f, 0xe8, 0x29,
+ 0x94, 0xc5, 0xfe, 0x1a, 0xf1, 0x86, 0x49, 0x3e, 0x6e, 0x2e, 0xb0, 0xd6, 0x24, 0xed, 0x70, 0xd1,
+ 0x4f, 0x48, 0x75, 0x1d, 0x8a, 0xc9, 0x08, 0xd0, 0x2d, 0xb8, 0xd9, 0xdd, 0x3e, 0xe8, 0xec, 0xb7,
+ 0x8c, 0x83, 0x56, 0x4f, 0x3f, 0x6a, 0xce, 0x54, 0x88, 0x15, 0xc8, 0xf4, 0x8e, 0x3a, 0x15, 0x0d,
+ 0x55, 0xa0, 0x88, 0xb7, 0x0f, 0x9b, 0x47, 0x07, 0x46, 0xb7, 0xb7, 0x8d, 0x7b, 0x95, 0x74, 0xfd,
+ 0xe3, 0x69, 0x8a, 0xcd, 0x8d, 0xa4, 0x7e, 0x1f, 0x2a, 0xb3, 0x0d, 0x00, 0x3f, 0xd3, 0xa2, 0x6f,
+ 0x50, 0x67, 0x9a, 0x7f, 0xd7, 0xff, 0x93, 0x81, 0xd5, 0x1d, 0x3a, 0xfa, 0x55, 0x48, 0xfc, 0xf1,
+ 0x84, 0xb0, 0xab, 0xcc, 0xec, 0xdb, 0x9c, 0xeb, 0x43, 0xe2, 0x13, 0x67, 0x10, 0x5d, 0xc0, 0xf7,
+ 0xe6, 0xa4, 0x21, 0x72, 0xd0, 0xe3, 0x28, 0x5c, 0x16, 0x60, 0x1c, 0x61, 0xd1, 0x01, 0x20, 0x6a,
+ 0x11, 0x87, 0xd1, 0xe1, 0x98, 0x3a, 0x23, 0x63, 0xc8, 0x0b, 0x9b, 0xec, 0x0c, 0x0a, 0x5b, 0xb7,
+ 0xe7, 0xf2, 0x48, 0x54, 0x3f, 0xbc, 0x96, 0x40, 0x0a, 0x5d, 0xc0, 0xab, 0x9d, 0xef, 0xbe, 0x56,
+ 0xfb, 0x2d, 0x8a, 0x7d, 0x06, 0xe7, 0xb9, 0x46, 0x6c, 0x33, 0xfa, 0x01, 0xa0, 0xc9, 0x70, 0x4c,
+ 0x87, 0x65, 0x41, 0x87, 0x4a, 0x6c, 0x16, 0x71, 0xfb, 0xf9, 0x2c, 0x37, 0x97, 0xde, 0xda, 0x1c,
+ 0xce, 0x64, 0xea, 0x6d, 0xbc, 0x7c, 0x02, 0xab, 0xaa, 0x3a, 0x58, 0x51, 0xc8, 0xd9, 0x85, 0x42,
+ 0x2e, 0x47, 0x30, 0x19, 0xef, 0x7b, 0x24, 0xcf, 0xff, 0xb2, 0x50, 0x52, 0x7c, 0x78, 0xec, 0x3a,
+ 0x43, 0x3a, 0x42, 0xc7, 0xb0, 0x66, 0x45, 0x05, 0xdd, 0x70, 0x65, 0x50, 0x8a, 0xf2, 0xf3, 0xda,
+ 0xca, 0xd9, 0x0b, 0x80, 0xb7, 0x95, 0xd6, 0xec, 0xa5, 0xf0, 0x1b, 0xb8, 0x31, 0xdd, 0xaf, 0x46,
+ 0xbe, 0xe5, 0xdd, 0xfc, 0x60, 0xf1, 0xa3, 0xaf, 0xa7, 0xf0, 0xb5, 0xc1, 0x25, 0x45, 0xb5, 0x07,
+ 0x6b, 0x7d, 0x3a, 0x32, 0xbe, 0xe6, 0xbb, 0x11, 0x7b, 0x97, 0x6f, 0x9b, 0xfb, 0x8b, 0x6d, 0x1e,
+ 0xef, 0xa9, 0xfa, 0x6f, 0x30, 0xbf, 0x7c, 0x3a, 0xee, 0xfb, 0xd4, 0x8a, 0x5d, 0xe6, 0xdf, 0x4a,
+ 0x7c, 0x5d, 0x18, 0x4f, 0x1c, 0x96, 0x4e, 0x93, 0x0a, 0xfe, 0xb2, 0x11, 0x8f, 0x67, 0xcf, 0x74,
+ 0x8c, 0x81, 0xc8, 0xb8, 0x20, 0xe2, 0xfc, 0x97, 0xcd, 0xd4, 0xee, 0xc8, 0xf7, 0xaf, 0x67, 0x3a,
+ 0x52, 0xc4, 0x65, 0x36, 0x25, 0xd7, 0xfe, 0x9c, 0x86, 0xf2, 0xb4, 0x09, 0x7a, 0x08, 0x10, 0x30,
+ 0xd3, 0x67, 0xf2, 0x5d, 0xad, 0x7d, 0xeb, 0xbb, 0x3a, 0x2f, 0xac, 0xb9, 0x8c, 0x7e, 0x02, 0x39,
+ 0xe2, 0x58, 0x8b, 0x3e, 0xc8, 0x57, 0x88, 0x63, 0x09, 0xd8, 0x13, 0x15, 0x22, 0xd7, 0x4a, 0x9e,
+ 0xab, 0x3d, 0xfe, 0x56, 0x9a, 0xc7, 0x30, 0xa1, 0x41, 0xcf, 0xe0, 0x7b, 0xc4, 0x11, 0x55, 0xc7,
+ 0x0c, 0x99, 0x6b, 0x78, 0xae, 0x17, 0xf2, 0xfe, 0xd5, 0x75, 0x0c, 0x77, 0x68, 0xcc, 0x66, 0x91,
+ 0x6f, 0x74, 0x0e, 0xdf, 0x93, 0x80, 0xed, 0x90, 0xb9, 0x9d, 0xd8, 0xfc, 0x68, 0x38, 0x9d, 0x93,
+ 0xb8, 0xa7, 0xfa, 0x47, 0x1a, 0x4a, 0x53, 0xfb, 0x85, 0xd6, 0xa1, 0x60, 0x91, 0x60, 0xe0, 0x53,
+ 0x21, 0xab, 0xb2, 0x98, 0x54, 0xa1, 0xcf, 0xe1, 0x43, 0x9f, 0x7c, 0x1d, 0x52, 0x5f, 0x1c, 0x62,
+ 0xc7, 0xe2, 0xf5, 0xcb, 0x36, 0xfb, 0xc4, 0x36, 0xce, 0xc8, 0x38, 0x50, 0xad, 0x42, 0x35, 0x32,
+ 0xd9, 0x95, 0x16, 0xfb, 0xdc, 0x60, 0x8f, 0x8c, 0x03, 0xa4, 0xc3, 0xb2, 0xb0, 0x0e, 0x44, 0xbf,
+ 0x30, 0xff, 0x97, 0xc0, 0xd4, 0xb2, 0x1a, 0x02, 0x1f, 0xb4, 0x1c, 0xe6, 0x8f, 0xb1, 0xc2, 0x23,
+ 0x1d, 0x4a, 0xb2, 0x24, 0x4f, 0x53, 0xfd, 0xee, 0x1c, 0x87, 0xa2, 0x10, 0x2b, 0x7f, 0xb8, 0xc8,
+ 0x12, 0x52, 0xed, 0x21, 0x14, 0x12, 0x13, 0xf0, 0x9b, 0xe3, 0x8c, 0x8c, 0xa3, 0x9b, 0xe3, 0x8c,
+ 0x8c, 0xf9, 0x33, 0xf0, 0x95, 0x69, 0x87, 0x44, 0x35, 0x92, 0x52, 0x78, 0x94, 0xfe, 0x54, 0xab,
+ 0xff, 0x16, 0x0a, 0xd1, 0x19, 0xda, 0x23, 0xe3, 0xf7, 0x7d, 0x4d, 0xc8, 0xba, 0x6e, 0x38, 0xe1,
+ 0x79, 0x5f, 0xbd, 0xac, 0x64, 0x5d, 0x3f, 0x14, 0x8a, 0x7a, 0x1b, 0x8a, 0x71, 0xe9, 0xe1, 0xb3,
+ 0x3f, 0x04, 0xe0, 0x37, 0x03, 0x1b, 0x1b, 0xd1, 0xfa, 0xa7, 0x18, 0x3b, 0xdd, 0x36, 0x92, 0x31,
+ 0xce, 0x4b, 0xeb, 0x3d, 0x32, 0xae, 0xff, 0x5b, 0x83, 0x0c, 0x77, 0xf1, 0x9e, 0x5a, 0xd7, 0x47,
+ 0xea, 0x5a, 0x95, 0x37, 0xda, 0xfd, 0xf9, 0x6b, 0x68, 0xf0, 0x5b, 0xb8, 0x65, 0x13, 0xf1, 0xaa,
+ 0x10, 0x98, 0x5a, 0x8f, 0x77, 0xf2, 0xb1, 0x92, 0xdf, 0xd0, 0xa2, 0x0b, 0x56, 0x37, 0x34, 0xff,
+ 0x46, 0x15, 0x48, 0xab, 0xae, 0x3e, 0xa3, 0xa7, 0x70, 0x9a, 0x5a, 0xe8, 0xba, 0xea, 0xcd, 0xf9,
+ 0x41, 0xcb, 0xeb, 0x29, 0xd9, 0x9d, 0xef, 0xe4, 0x61, 0x85, 0xca, 0x1f, 0x31, 0xf5, 0x7f, 0x6a,
+ 0x90, 0xc7, 0x64, 0xe0, 0xfa, 0x16, 0x0f, 0xf3, 0x97, 0x50, 0x9a, 0x14, 0x79, 0x9e, 0xac, 0xf4,
+ 0x5b, 0xb9, 0x93, 0xcc, 0xb2, 0x9e, 0xc2, 0x45, 0x2b, 0x99, 0x75, 0x1d, 0x4a, 0x93, 0xb2, 0xcb,
+ 0x7d, 0x65, 0xde, 0x9a, 0xb3, 0x04, 0x5d, 0xf8, 0xe3, 0xbb, 0x9f, 0x60, 0xcf, 0x87, 0x90, 0xa7,
+ 0x96, 0x21, 0xc8, 0x25, 0x6f, 0xc6, 0x3c, 0xce, 0x51, 0xeb, 0x58, 0xc8, 0xf1, 0x99, 0x3d, 0x85,
+ 0xd2, 0x14, 0x69, 0x66, 0x9e, 0x3a, 0xda, 0xec, 0x53, 0xe7, 0x16, 0x80, 0x58, 0x2e, 0x49, 0xbe,
+ 0x84, 0x94, 0xa6, 0x6d, 0xa1, 0x9b, 0x90, 0x93, 0x8c, 0xa5, 0xb2, 0x4a, 0xe5, 0xf1, 0x8a, 0x90,
+ 0xdb, 0x56, 0xfd, 0xf7, 0xda, 0x64, 0x2a, 0x59, 0x90, 0x1e, 0x41, 0x56, 0x0c, 0x5e, 0x89, 0xd4,
+ 0x12, 0x82, 0x7e, 0x0c, 0x59, 0x59, 0x0b, 0xd3, 0x0b, 0xd5, 0x42, 0x69, 0x5c, 0xff, 0x05, 0xe4,
+ 0x5a, 0x82, 0xa4, 0x6d, 0x6b, 0xe2, 0x41, 0xbb, 0x8a, 0x87, 0x2f, 0xa1, 0x98, 0x3c, 0xfa, 0x73,
+ 0x5a, 0x2f, 0xed, 0x1d, 0x5b, 0xaf, 0x07, 0x0c, 0x20, 0xf1, 0x03, 0xa2, 0x06, 0x1f, 0xec, 0xb7,
+ 0xf7, 0x5a, 0xfb, 0x6d, 0xfd, 0xe8, 0x8d, 0x2e, 0x64, 0x0d, 0x4a, 0xc7, 0x2d, 0xfc, 0xc2, 0x78,
+ 0x7a, 0x28, 0x4c, 0x5e, 0x54, 0x34, 0x54, 0x84, 0x5c, 0x2c, 0xa5, 0xb9, 0xd4, 0x39, 0xea, 0x76,
+ 0xdb, 0x3b, 0xfb, 0xad, 0x4a, 0x06, 0x01, 0x2c, 0xab, 0x91, 0x25, 0xb4, 0x0a, 0x05, 0x01, 0x55,
+ 0x8a, 0xec, 0x83, 0x97, 0x90, 0x8b, 0x9e, 0x15, 0xe8, 0x26, 0xdc, 0xd8, 0x6d, 0xef, 0xb7, 0x2e,
+ 0x7b, 0x57, 0xaf, 0x42, 0x61, 0xa7, 0x7d, 0xb8, 0x8d, 0x5f, 0x18, 0xdc, 0xa2, 0xa2, 0xa1, 0x12,
+ 0xe4, 0x7b, 0xad, 0xe7, 0x3d, 0x29, 0xa6, 0x51, 0x1e, 0xb2, 0xed, 0x83, 0xed, 0x27, 0x7c, 0xba,
+ 0x1c, 0x2c, 0x6d, 0x1f, 0xe3, 0xa3, 0xca, 0xca, 0xce, 0x1f, 0x35, 0xb8, 0x39, 0x70, 0xcf, 0x2f,
+ 0x4f, 0xc5, 0x0e, 0x34, 0x6d, 0x2f, 0x6a, 0xa0, 0xb5, 0x97, 0x9f, 0x2a, 0xa3, 0x91, 0x6b, 0x9b,
+ 0xce, 0xa8, 0xe1, 0xfa, 0xa3, 0xcd, 0x11, 0x71, 0xc4, 0xe5, 0xb8, 0x29, 0x87, 0x4c, 0x8f, 0x06,
+ 0x33, 0xbf, 0xe3, 0x3f, 0xb3, 0x6c, 0xef, 0xaf, 0xe9, 0x6b, 0x4f, 0x24, 0x54, 0x34, 0x38, 0x8d,
+ 0xa6, 0xed, 0x35, 0x8e, 0xb7, 0xfe, 0x15, 0x69, 0x4f, 0x84, 0xf6, 0xa4, 0x69, 0x7b, 0x27, 0xc7,
+ 0x5b, 0xfd, 0x65, 0xe1, 0xf0, 0x93, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0xcd, 0x33, 0x86, 0x32,
+ 0xde, 0x17, 0x00, 0x00,
}