From b2816c469765c4c301c5227dd63cb3792c1c4247 Mon Sep 17 00:00:00 2001
From: Shane Glass <23001651+shanecglass@users.noreply.github.com>
Date: Mon, 12 Feb 2024 17:50:59 +0000
Subject: [PATCH] feat: adding extension notebooks (#303)
---
metadata.display.yaml | 2 +-
metadata.yaml | 26 +-
modules/authorization/metadata.display.yaml | 2 +-
modules/authorization/metadata.yaml | 6 +-
modules/data_warehouse/README.md | 12 +-
.../assets/data-warehouse-architecture.json | 2 +-
.../assets/data-warehouse-architecture.png | Bin 194538 -> 117718 bytes
.../assets/data-warehouse-architecture.svg | 3342 +++--------------
modules/data_warehouse/bigquery.tf | 94 +-
modules/data_warehouse/main.tf | 11 +-
modules/data_warehouse/metadata.display.yaml | 19 +-
modules/data_warehouse/metadata.yaml | 50 +-
modules/data_warehouse/notebook_deployment.tf | 210 ++
modules/data_warehouse/src/function/main.py | 60 +
.../src/function/requirements.txt | 2 +
.../getting_started_bq_dataframes.ipynb | 867 +++++
.../data_warehouse/templates/workflow.tftpl | 27 +
modules/data_warehouse/variables.tf | 70 +-
modules/data_warehouse/versions.tf | 4 +
modules/data_warehouse/workflows.tf | 65 +-
.../scheduled_queries/metadata.display.yaml | 2 +-
modules/scheduled_queries/metadata.yaml | 6 +-
modules/udf/metadata.display.yaml | 2 +-
modules/udf/metadata.yaml | 6 +-
24 files changed, 2032 insertions(+), 2855 deletions(-)
create mode 100644 modules/data_warehouse/notebook_deployment.tf
create mode 100644 modules/data_warehouse/src/function/main.py
create mode 100644 modules/data_warehouse/src/function/requirements.txt
create mode 100644 modules/data_warehouse/templates/notebooks/getting_started_bq_dataframes.ipynb
diff --git a/metadata.display.yaml b/metadata.display.yaml
index 5b4404e5..81c5ec4a 100644
--- a/metadata.display.yaml
+++ b/metadata.display.yaml
@@ -1,4 +1,4 @@
-# Copyright 2023 Google LLC
+# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/metadata.yaml b/metadata.yaml
index fb491821..7086be46 100644
--- a/metadata.yaml
+++ b/metadata.yaml
@@ -1,4 +1,4 @@
-# Copyright 2023 Google LLC
+# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -27,7 +27,7 @@ spec:
version: 7.0.0
actuationTool:
flavor: Terraform
- version: ">= 0.13"
+ version: ">= 1.3"
description: {}
content:
subBlueprints:
@@ -61,7 +61,6 @@ spec:
- name: dataset_id
description: Unique ID for the dataset being provisioned.
varType: string
- defaultValue: null
required: true
- name: dataset_labels
description: Key value pairs in a map for dataset labels
@@ -70,27 +69,22 @@ spec:
- name: dataset_name
description: Friendly name for the dataset being provisioned.
varType: string
- defaultValue: null
- name: default_table_expiration_ms
description: TTL of tables using the dataset in MS
varType: number
- defaultValue: null
- name: delete_contents_on_destroy
description: (Optional) If set to true, delete all the tables in the dataset when destroying the resource; otherwise, destroying the resource will fail if tables are present.
varType: bool
- defaultValue: null
- name: deletion_protection
- description: Whether or not to allow Terraform to destroy the instance. Unless this field is set to false in Terraform state, a terraform destroy or terraform apply that would delete the instance will fail
+ description: Whether or not to allow deletion of tables and external tables defined by this module. Can be overriden by table-level deletion_protection configuration.
varType: bool
defaultValue: false
- name: description
description: Dataset description.
varType: string
- defaultValue: null
- name: encryption_key
description: Default encryption key to apply to the dataset. Defaults to null (Google-managed).
varType: string
- defaultValue: null
- name: external_tables
description: A list of objects which include table_id, expiration_time, external_data_configuration, and labels.
varType: |-
@@ -120,9 +114,10 @@ spec:
mode = string,
source_uri_prefix = string,
}),
- expiration_time = string,
- max_staleness = optional(string),
- labels = map(string),
+ expiration_time = string,
+ max_staleness = optional(string),
+ deletion_protection = optional(bool),
+ labels = map(string),
}))
defaultValue: []
- name: location
@@ -161,11 +156,9 @@ spec:
- name: max_time_travel_hours
description: Defines the time travel window in hours
varType: number
- defaultValue: null
- name: project_id
description: Project where the dataset and table are created
varType: string
- defaultValue: null
required: true
- name: routines
description: A list of objects which include routine_id, routine_type, routine_language, definition_body, return_type, routine_description and arguments.
@@ -208,8 +201,9 @@ spec:
interval = string,
}),
}),
- expiration_time = string,
- labels = map(string),
+ expiration_time = string,
+ deletion_protection = optional(bool),
+ labels = map(string),
}))
defaultValue: []
- name: views
diff --git a/modules/authorization/metadata.display.yaml b/modules/authorization/metadata.display.yaml
index 84aad6c3..64fb6e6e 100644
--- a/modules/authorization/metadata.display.yaml
+++ b/modules/authorization/metadata.display.yaml
@@ -1,4 +1,4 @@
-# Copyright 2023 Google LLC
+# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/modules/authorization/metadata.yaml b/modules/authorization/metadata.yaml
index 2a6a3507..4091f645 100644
--- a/modules/authorization/metadata.yaml
+++ b/modules/authorization/metadata.yaml
@@ -1,4 +1,4 @@
-# Copyright 2023 Google LLC
+# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -28,7 +28,7 @@ spec:
version: 7.0.0
actuationTool:
flavor: Terraform
- version: ">= 0.13"
+ version: ">= 1.3"
description: {}
content:
examples:
@@ -73,12 +73,10 @@ spec:
- name: dataset_id
description: Unique ID for the dataset being provisioned.
varType: string
- defaultValue: null
required: true
- name: project_id
description: Project where the dataset and table are created
varType: string
- defaultValue: null
required: true
- name: roles
description: An array of objects that define dataset access for one or more entities.
diff --git a/modules/data_warehouse/README.md b/modules/data_warehouse/README.md
index 7c8f7532..937527d7 100644
--- a/modules/data_warehouse/README.md
+++ b/modules/data_warehouse/README.md
@@ -17,6 +17,7 @@ The resources/services/activations/deletions that this module will create/trigge
- Creates and inferences with a BigQuery ML model
- Creates a remote model and uses Generative AI to generate text through a BigQuery ML remote model
- Creates a Looker Studio report
+- Deploys follow-on learning notebooks
### preDeploy
To deploy this blueprint you must have an active billing account and billing permissions.
@@ -35,9 +36,11 @@ Functional examples are included in the
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
-| deletion\_protection | Whether or not to protect GCS resources from deletion when solution is modified or changed. | `string` | `true` | no |
+| create\_ignore\_service\_accounts | Whether or not to ignore creation of a service account if an account of the same name already exists | `string` | `true` | no |
+| dataform\_region | Region that is used to deploy Dataform resources. This does not limit where resources can be run or what region data must be located in. | `string` | `null` | no |
+| deletion\_protection | Whether or not to protect GCS resources from deletion when solution is modified or changed. | `string` | `false` | no |
| enable\_apis | Whether or not to enable underlying apis in this solution. | `string` | `true` | no |
-| force\_destroy | Whether or not to protect BigQuery resources from deletion when solution is modified or changed. | `string` | `false` | no |
+| force\_destroy | Whether or not to protect BigQuery resources from deletion when solution is modified or changed. | `string` | `true` | no |
| labels | A map of labels to apply to contained resources. | `map(string)` |
{
"data-warehouse": true
}
| no |
| project\_id | Google Cloud Project ID | `string` | n/a | yes |
| region | Google Cloud Region | `string` | n/a | yes |
@@ -86,6 +89,7 @@ A project with the following APIs enabled must be used to host the
resources of this module:
- Vertex AI API: `aiplatform.googleapis.com`
+- Artifact Registry API: `artifactregistry.googleapis.com`
- BigQuery API: `bigquery.googleapis.com`
- BigQuery Connection API: `bigqueryconnection.googleapis.com`
- BigQuery Data Policy API: `bigquerydatapolicy.googleapis.com`
@@ -95,10 +99,14 @@ resources of this module:
- BigQuery Storage API: `bigquerystorage.googleapis.com`
- Google Cloud APIs: `cloudapis.googleapis.com`
- Cloud Build API: `cloudbuild.googleapis.com`
+- Cloud Functions API: `cloudfunctions.googleapis.com`
- Compute Engine API: `compute.googleapis.com`
- Infrastructure Manager API: `config.googleapis.com`
- Data Catalog API: `datacatalog.googleapis.com`
+- Dataform API: `dataform.googleapis.com`
- Data Lineage API: `datalineage.googleapis.com`
+- Notebooks API: `notebooks.googleapis.com`
+- Cloud Run API: `run.googleapis.com`
- Service Usage API: `serviceusage.googleapis.com`
- Google Cloud Storage API: `storage.googleapis.com`
- Google Cloud Storage JSON API: `storage-api.googleapis.com`
diff --git a/modules/data_warehouse/assets/data-warehouse-architecture.json b/modules/data_warehouse/assets/data-warehouse-architecture.json
index bc42429f..5a7b9bb1 100644
--- a/modules/data_warehouse/assets/data-warehouse-architecture.json
+++ b/modules/data_warehouse/assets/data-warehouse-architecture.json
@@ -1 +1 @@
-{"version":"0.2.3","resources":[["UHRN8URZWaOiEoegPEZvR",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"UHRN8URZWaOiEoegPEZvR","isDeleted":true,"resource":"region"}],["xL5R-mC3JM90QTsSNUJjX",{"documentation_url":"https://cloud.google.com/resource-manager/docs/creating-managing-projects","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"billing_account":{"type":"string","description":"The alphanumeric ID of the billing account this project belongs to. The user or service account performing this operation with Terraform must have Billing Account Administrator privileges (roles/billing.admin) in the organization. See Google Cloud Billing API Access Control for more details.","description_kind":"plain","optional":true,"placeholder":"011DC8-DA44DB-216504","display":true},"folder_id":{"type":"string","description":"The numeric ID of the folder this project should be created under. Only one of org_id or folder_id may be specified. If the folder_id is specified, then the project is created under the specified folder. Changing this forces the project to be migrated to the newly specified folder.","description_kind":"plain","placeholder":"191953190635","optional":true,"display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"org_id":{"type":"string","description":"The numeric ID of the organization this project belongs to. Changing this forces a new project to be created. Only one of org_id or folder_id may be specified. If the org_id is specified then the project is created at the top level. Changing this forces the project to be migrated to the newly specified organization.","description_kind":"plain","placeholder":"991249987803","optional":true,"display":true},"project_id":{"type":"string","field_type":"single-select","description":"The project ID. Changing this forces a new project to be created.","description_kind":"plain","required":true,"display":true,"placeholder":"prj-adt-terraform","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","representative":true,"gcp_resource":"project"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"xL5R-mC3JM90QTsSNUJjX","isDeleted":true,"resource":"google_project"}],["vqRNLI_Kb6tOOTPDWKqb4",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"vqRNLI_Kb6tOOTPDWKqb4","isDeleted":true,"resource":"region"}],["fbaE_gb4igPrw0Kv6UKau",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"fbaE_gb4igPrw0Kv6UKau","isDeleted":true,"resource":"region"}],["iaxbfHV-ny455ElfBgSN0",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"iaxbfHV-ny455ElfBgSN0","isDeleted":true,"resource":"region"}],["Zlb5FtWCuto_voxL_bzkO",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"Zlb5FtWCuto_voxL_bzkO","isDeleted":true,"resource":"region"}],["LKICWKVtjNK_KOm00c4ac",{"documentation_url":"https://cloud.google.com/resource-manager/docs/creating-managing-projects","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"billing_account":{"type":"string","description":"The alphanumeric ID of the billing account this project belongs to. The user or service account performing this operation with Terraform must have Billing Account Administrator privileges (roles/billing.admin) in the organization. See Google Cloud Billing API Access Control for more details.","description_kind":"plain","optional":true,"placeholder":"011DC8-DA44DB-216504","display":true},"folder_id":{"type":"string","description":"The numeric ID of the folder this project should be created under. Only one of org_id or folder_id may be specified. If the folder_id is specified, then the project is created under the specified folder. Changing this forces the project to be migrated to the newly specified folder.","description_kind":"plain","placeholder":"191953190635","optional":true,"display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"org_id":{"type":"string","description":"The numeric ID of the organization this project belongs to. Changing this forces a new project to be created. Only one of org_id or folder_id may be specified. If the org_id is specified then the project is created at the top level. Changing this forces the project to be migrated to the newly specified organization.","description_kind":"plain","placeholder":"991249987803","optional":true,"display":true},"project_id":{"type":"string","field_type":"single-select","description":"The project ID. Changing this forces a new project to be created.","description_kind":"plain","required":true,"display":true,"placeholder":"prj-adt-terraform","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","representative":true,"gcp_resource":"project"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"LKICWKVtjNK_KOm00c4ac","isDeleted":true,"resource":"google_project"}],["BmLdO74YV04wW-ZaLwn-t",{"documentation_url":"https://cloud.google.com/run/docs/deploying","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The location of the cloud run instance. eg us-central1","description_kind":"plain","required":true,"display":true,"placeholder":"us-central1","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region"},"name":{"type":"string","description":"Name must be unique within a namespace, within a Cloud Run region. Is required when creating resources. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names","description_kind":"plain","required":true,"display":true,"placeholder":"webservice","validation_regex":"^(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)$"},"project":{"type":"string","description_kind":"plain","field_type":"single-select","required":true,"computed":true,"display":true,"gcp_resource":"project","placeholder":"prj-adt-terraform","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"template":{"nesting_mode":"list","display":true,"display_label":"Template","block":{"block_types":{"spec":{"nesting_mode":"list","display":true,"display_label":"Spec","block":{"block_types":{"containers":{"nesting_mode":"list","display":true,"display_label":"Container spec","block":{"attributes":{"image":{"type":"string","description":"Docker image name. This is most often a reference to a container located in the container registry, such as gcr.io/cloudrun/hello More info: https://kubernetes.io/docs/concepts/containers/images","description_kind":"plain","required":true,"placeholder":"gcr.io/cloudrun/hello","display":true}},"block_types":{"ports":{"nesting_mode":"list","display":true,"display_label":"Ports","block":{"attributes":{"container_port":{"type":"number","description":"Port number the container listens on. This must be a valid port number, 0 < x < 65536.","description_kind":"plain","optional":true,"placeholder":"3000","display":true}},"description":"List of open ports in the container. More Info: https://cloud.google.com/run/docs/reference/rest/v1/RevisionSpec#ContainerPort","description_kind":"plain"}}},"description":"Container defines the unit of execution for this Revision. In the context of a Revision, we disallow a number of the fields of this Container, including: name, ports, and volumeMounts. The runtime contract is documented here: https://github.com/knative/serving/blob/main/docs/runtime-contract.md","description_kind":"plain"},"min_items":1}},"description":"RevisionSpec holds the desired state of the Revision (from the client).","description_kind":"plain"},"max_items":1,"min_items":1}},"description":"template holds the latest specification for the Revision to be stamped out. The template references the container image, and may also include labels and annotations that should be attached to the Revision. To correlate a Revision, and/or to force a Revision to be created when the spec doesn't otherwise change, a nonce label may be provided in the template metadata. For more details, see: https://github.com/knative/serving/blob/main/docs/client-conventions.md#associate-modifications-with-revisions Cloud Run does not currently support referencing a build that is responsible for materializing the container image from source.","description_kind":"plain"},"max_items":1,"min_items":1}}},"boxId":"BmLdO74YV04wW-ZaLwn-t","isDeleted":true,"resource":"google_cloud_run_service"}],["23Zvzt8Up1N1pOkvrcj-R",{"documentation_url":"https://cloud.google.com/bigquery/docs/datasets#terraform","version":0,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"dataset_id":{"type":"string","description":"A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.","description_kind":"plain","placeholder":"foo","display":true,"required":true},"friendly_name":{"type":"string","description":"Friendly name.","description_kind":"plain","display":true,"placeholder":"foo","optional":true},"location":{"type":"string","field_type":"single-select","description":"The geographic location where the dataset should reside. See [official docs](https://cloud.google.com/bigquery/docs/dataset-locations). There are two types of locations, regional or multi-regional. A regional location is a specific geographic place, such as Tokyo, and a multi-regional location is a large geographic area, such as the United States, that contains at least two geographic places. The default value is multi-regional location 'US'. Changing this forces a new resource to be created.","description_kind":"plain","display":true,"placeholder":"US","optional":true,"gcp_resource":"region"},"project":{"type":"string","field_type":"single-select","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"computed":true,"gcp_resource":"project"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"tables":{"nesting_mode":"list","display":true,"display_label":"tables","block":{"attributes":{"friendly_name":{"type":"string","description":"A descriptive name for the table.","placeholder":"table-a","display":true,"description_kind":"plain","optional":true},"schema":{"type":"string","description":"A JSON schema for the table.","description_kind":"plain","display":true,"optional":true,"computed":true},"table_id":{"type":"string","description":"A unique ID for the resource. Changing this forces a new resource to be created.","description_kind":"plain","placeholder":"sheet","display":true,"required":true}}}}},"description_kind":"plain"},"boxId":"23Zvzt8Up1N1pOkvrcj-R","isDeleted":true,"resource":"google_bigquery_dataset"}],["a7jxO9KBbu7x0PTSp8V8R",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"a7jxO9KBbu7x0PTSp8V8R","isDeleted":true,"resource":"region"}],["RypXleBEkT_Umab_0FLYS",{"documentation_url":"https://cloud.google.com/bigquery/docs/datasets#terraform","version":0,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"dataset_id":{"type":"string","description":"A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.","description_kind":"plain","placeholder":"foo","display":true,"required":true},"friendly_name":{"type":"string","description":"Friendly name.","description_kind":"plain","display":true,"placeholder":"foo","optional":true},"location":{"type":"string","field_type":"single-select","description":"The geographic location where the dataset should reside. See [official docs](https://cloud.google.com/bigquery/docs/dataset-locations). There are two types of locations, regional or multi-regional. A regional location is a specific geographic place, such as Tokyo, and a multi-regional location is a large geographic area, such as the United States, that contains at least two geographic places. The default value is multi-regional location 'US'. Changing this forces a new resource to be created.","description_kind":"plain","display":true,"placeholder":"US","optional":true,"gcp_resource":"region"},"project":{"type":"string","field_type":"single-select","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"computed":true,"gcp_resource":"project"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"tables":{"nesting_mode":"list","display":true,"display_label":"tables","block":{"attributes":{"friendly_name":{"type":"string","description":"A descriptive name for the table.","placeholder":"table-a","display":true,"description_kind":"plain","optional":true},"schema":{"type":"string","description":"A JSON schema for the table.","description_kind":"plain","display":true,"optional":true,"computed":true},"table_id":{"type":"string","description":"A unique ID for the resource. Changing this forces a new resource to be created.","description_kind":"plain","placeholder":"sheet","display":true,"required":true}}}}},"description_kind":"plain"},"boxId":"RypXleBEkT_Umab_0FLYS","isDeleted":true,"resource":"google_bigquery_dataset"}],["p0S5NKIgKqSfDkV9tM2wc",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"p0S5NKIgKqSfDkV9tM2wc","isDeleted":true,"resource":"region"}],["QzD_9h41xrBE4QdwJfF-N",{"documentation_url":"https://cloud.google.com/storage/docs/buckets","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The Google Cloud Storage location","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"gcp_resource":"region","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$"},"name":{"type":"string","field_type":"single-select","description":"The name of the bucket.","description_kind":"plain","required":true,"placeholder":"helloworld-bucket","display":true,"validation_regex":"^(?!goog)(?!.*google).*(?:[a-z](?:[\\-_.a-z0-9]{2,61}[a-z0-9])?)","representative":true,"gcp_resource":"gcs_bucket","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description":"The ID of the project in which the resource belongs. If it is not provided, the provider project is used.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","computed":true,"display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project"},"storage_class":{"type":"string","field_type":"single-select","description":"The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.","description_kind":"plain","optional":true,"placeholder":"STANDARD","display":true,"validation_regex":"(NEARLINE|ARCHIVE|COLDLINE|STANDARD)","values":["STANDARD","NEARLINE","COLDLINE","ARCHIVE"]},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"QzD_9h41xrBE4QdwJfF-N","isDeleted":true,"resource":"google_storage_bucket"}],["d4dZQFNnizOH4OIitFRg0",{"documentation_url":"https://cloud.google.com/build/docs/build-push-docker-image","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","description":"Name of the trigger. Must be unique within the project.","description_kind":"plain","optional":true,"placeholder":"cb_git_trigger","computed":true,"display":true},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"service_account":{"type":"string","field_type":"single-select","description":"The service account used for all user-controlled operations including triggers.patch, triggers.run, builds.create, and builds.cancel. If no service account is set, then the standard Cloud Build service account ([PROJECT_NUM]@system.gserviceaccount.com) will be used instead.","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","description_kind":"plain","optional":true,"display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"git_file_source":{"nesting_mode":"list","display":true,"display_label":"git_file_source","block":{"attributes":{"path":{"type":"string","description":"The path of the file, with the repo root as the root of the path.","description_kind":"plain","required":true,"placeholder":"cloudbuild.yaml","display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"revision":{"type":"string","description":"The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.","description_kind":"plain","placeholder":"refs/heads/main","optional":true,"display":true},"uri":{"type":"string","description":"The URI of the repo (optional). If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","optional":true,"display":true}},"description":"The file source describing the local or remote Build template.","description_kind":"plain"},"max_items":1,"min_items":1},"source_to_build":{"nesting_mode":"list","display":true,"display_label":"source_to_build","block":{"attributes":{"ref":{"type":"string","description":"The branch or tag to use. Must start with \"refs/\" (required).","description_kind":"plain","placeholder":"refs/heads/main","required":true,"display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"uri":{"type":"string","description":"The URI of the repo (required).","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","required":true,"display":true}},"description":"The repo and ref of the repository from which to build. This field is used only for those triggers that do not respond to SCM events. Triggers that respond to such events build source at whatever commit caused the event. This field is currently only used by Webhook, Pub/Sub, Manual, and Cron triggers. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1},"webhook_config":{"nesting_mode":"list","display":true,"display_label":"webhook_config","block":{"attributes":{"secret":{"type":"resource","field_type":"resource","resource":"secret_manager_single_version","description":"Resource name for the secret required as a URL parameter.","description_kind":"plain","display":true}},"description":"WebhookConfig describes the configuration of a trigger that creates a build whenever a webhook is sent to a trigger's webhook URL. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1}},"description_kind":"plain"},"boxId":"d4dZQFNnizOH4OIitFRg0","isDeleted":true,"resource":"cloudbuild_git_trigger"}],["AdNAjJY_mPmLqaqxUTb82",{"documentation_url":"https://cloud.google.com/build/docs/build-push-docker-image","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","description":"Name of the trigger. Must be unique within the project.","description_kind":"plain","optional":true,"placeholder":"cb_git_trigger","computed":true,"display":true},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"service_account":{"type":"string","field_type":"single-select","description":"The service account used for all user-controlled operations including triggers.patch, triggers.run, builds.create, and builds.cancel. If no service account is set, then the standard Cloud Build service account ([PROJECT_NUM]@system.gserviceaccount.com) will be used instead.","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","description_kind":"plain","optional":true,"display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"git_file_source":{"nesting_mode":"list","display":true,"display_label":"git_file_source","block":{"attributes":{"path":{"type":"string","description":"The path of the file, with the repo root as the root of the path.","description_kind":"plain","required":true,"placeholder":"cloudbuild.yaml","display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"revision":{"type":"string","description":"The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.","description_kind":"plain","placeholder":"refs/heads/main","optional":true,"display":true},"uri":{"type":"string","description":"The URI of the repo (optional). If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","optional":true,"display":true}},"description":"The file source describing the local or remote Build template.","description_kind":"plain"},"max_items":1,"min_items":1},"source_to_build":{"nesting_mode":"list","display":true,"display_label":"source_to_build","block":{"attributes":{"ref":{"type":"string","description":"The branch or tag to use. Must start with \"refs/\" (required).","description_kind":"plain","placeholder":"refs/heads/main","required":true,"display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"uri":{"type":"string","description":"The URI of the repo (required).","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","required":true,"display":true}},"description":"The repo and ref of the repository from which to build. This field is used only for those triggers that do not respond to SCM events. Triggers that respond to such events build source at whatever commit caused the event. This field is currently only used by Webhook, Pub/Sub, Manual, and Cron triggers. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1},"webhook_config":{"nesting_mode":"list","display":true,"display_label":"webhook_config","block":{"attributes":{"secret":{"type":"resource","field_type":"resource","resource":"secret_manager_single_version","description":"Resource name for the secret required as a URL parameter.","description_kind":"plain","display":true}},"description":"WebhookConfig describes the configuration of a trigger that creates a build whenever a webhook is sent to a trigger's webhook URL. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1}},"description_kind":"plain"},"boxId":"AdNAjJY_mPmLqaqxUTb82","isDeleted":true,"resource":"cloudbuild_git_trigger"}],["ytWIU5Fbiq4oKMskS45VV",{"documentation_url":"https://cloud.google.com/build/docs/build-push-docker-image","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","description":"Name of the trigger. Must be unique within the project.","description_kind":"plain","optional":true,"placeholder":"cb_git_trigger","computed":true,"display":true},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"service_account":{"type":"string","field_type":"single-select","description":"The service account used for all user-controlled operations including triggers.patch, triggers.run, builds.create, and builds.cancel. If no service account is set, then the standard Cloud Build service account ([PROJECT_NUM]@system.gserviceaccount.com) will be used instead.","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","description_kind":"plain","optional":true,"display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"git_file_source":{"nesting_mode":"list","display":true,"display_label":"git_file_source","block":{"attributes":{"path":{"type":"string","description":"The path of the file, with the repo root as the root of the path.","description_kind":"plain","required":true,"placeholder":"cloudbuild.yaml","display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"revision":{"type":"string","description":"The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.","description_kind":"plain","placeholder":"refs/heads/main","optional":true,"display":true},"uri":{"type":"string","description":"The URI of the repo (optional). If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","optional":true,"display":true}},"description":"The file source describing the local or remote Build template.","description_kind":"plain"},"max_items":1,"min_items":1},"source_to_build":{"nesting_mode":"list","display":true,"display_label":"source_to_build","block":{"attributes":{"ref":{"type":"string","description":"The branch or tag to use. Must start with \"refs/\" (required).","description_kind":"plain","placeholder":"refs/heads/main","required":true,"display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"uri":{"type":"string","description":"The URI of the repo (required).","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","required":true,"display":true}},"description":"The repo and ref of the repository from which to build. This field is used only for those triggers that do not respond to SCM events. Triggers that respond to such events build source at whatever commit caused the event. This field is currently only used by Webhook, Pub/Sub, Manual, and Cron triggers. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1},"webhook_config":{"nesting_mode":"list","display":true,"display_label":"webhook_config","block":{"attributes":{"secret":{"type":"resource","field_type":"resource","resource":"secret_manager_single_version","description":"Resource name for the secret required as a URL parameter.","description_kind":"plain","display":true}},"description":"WebhookConfig describes the configuration of a trigger that creates a build whenever a webhook is sent to a trigger's webhook URL. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1}},"description_kind":"plain"},"boxId":"ytWIU5Fbiq4oKMskS45VV","isDeleted":true,"resource":"cloudbuild_git_trigger"}],["T_mshNLa6Cv_keTTXyg9N",{"documentation_url":"https://cloud.google.com/pubsub/docs/admin","version":0,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","description":"Name of the topic.","description_kind":"plain","placeholder":"pubsub-topic","display":true,"required":true},"labels":{"type":["map","string"],"description":"A set of key/value label pairs to assign to this Topic.","description_kind":"plain","display":true,"optional":true},"message_retention_duration":{"type":"string","description":"Indicates the minimum duration to retain a message after it is published to the topic. If this field is set, messages published to the topic in the last messageRetentionDuration are always available to subscribers. For instance, it allows any attached subscription to seek to a timestamp that is up to messageRetentionDuration in the past. If this field is not set, message retention is controlled by settings on individual subscriptions. Cannot be more than 7 days or less than 10 minutes.","description_kind":"plain","placeholder":"86600s","display":true,"optional":true},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"placeholder":"prj-adt-terraform","display":true,"computed":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"schema_settings":{"nesting_mode":"list","display":true,"display_label":"Schema Settings","block":{"attributes":{"encoding":{"type":"string","field_type":"single-select","description":"The encoding of messages validated against schema. Default value: \"ENCODING_UNSPECIFIED\" Possible values: [\"ENCODING_UNSPECIFIED\", \"JSON\", \"BINARY\"]","description_kind":"plain","placeholder":"JSON","display":true,"optional":true,"values":["ENCODING_UNSPECIFIED","JSON","BINARY"]},"schema":{"type":"string","description":"The name of the schema that messages published should be validated against. Format is projects/{project}/schemas/{schema}. The value of this field will be _deleted-schema_ if the schema has been deleted.","description_kind":"plain","placedholder":"projects/{project}/schemas/{schema}","display":true,"required":true}},"description":"Settings for validating messages published against a schema.","description_kind":"plain"},"max_items":1}},"description_kind":"plain"},"boxId":"T_mshNLa6Cv_keTTXyg9N","isDeleted":true,"resource":"google_pubsub_topic"}],["rJJmXdPlRXtLrEaOFUoaQ",{"documentation_url":"https://cloud.google.com/storage/docs/buckets","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The Google Cloud Storage location","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"gcp_resource":"region","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$"},"name":{"type":"string","field_type":"single-select","description":"The name of the bucket.","description_kind":"plain","required":true,"placeholder":"helloworld-bucket","display":true,"validation_regex":"^(?!goog)(?!.*google).*(?:[a-z](?:[\\-_.a-z0-9]{2,61}[a-z0-9])?)","representative":true,"gcp_resource":"gcs_bucket","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description":"The ID of the project in which the resource belongs. If it is not provided, the provider project is used.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","computed":true,"display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project"},"storage_class":{"type":"string","field_type":"single-select","description":"The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.","description_kind":"plain","optional":true,"placeholder":"STANDARD","display":true,"validation_regex":"(NEARLINE|ARCHIVE|COLDLINE|STANDARD)","values":["STANDARD","NEARLINE","COLDLINE","ARCHIVE"]},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"rJJmXdPlRXtLrEaOFUoaQ","isDeleted":true,"resource":"google_storage_bucket"}],["q530R61UTLOj7TzT77YrD",{"documentation_url":"https://cloud.google.com/vpc/docs/vpc","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","field_type":"single-select","description":"Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"validation_regex":"^(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)$","representative":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project","message":""},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"routes":{"display_label":"Routes","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","placeholder":"route-to-proxy","description":"Name of the route","description_kind":"plain","display":true},"dest_range":{"type":"string","description":"CIDR range of the destination","description_kind":"plain","placeholder":"10.0.0.0/24","display":true},"next_hop_ip":{"type":"string","description":"Next hop IP address","description_kind":"plain","placeholder":"10.1.0.0","display":true}}}},"fw_rules":{"display_label":"Ingress Firewall rules","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"name of the fw rule","description_kind":"plain","placeholder":"allow-ssh","display":true},"source_ranges":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist","description_kind":"plain","display":true},"ports":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist, Protocol is TCP","description_kind":"plain","display":true},"protocol":{"type":"string","field_type":"single-select","required":true,"description":"The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule","description_kind":"plain","display":true,"values":["tcp","udp","icmp","all"]},"target_service_accounts":{"type":["set","string"],"field_type":"multi-select","optional":true,"description":"The service accounts where this rule will be applied","description_kind":"plain","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}}},"description":"Fw rules for the VPC","description_kind":"plain"}}}},"boxId":"q530R61UTLOj7TzT77YrD","isDeleted":true,"resource":"google_compute_network"}],["ytmbL65ING_a2IF5e25Mc",{"documentation_url":"https://cloud.google.com/vpc/docs/vpc","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","field_type":"single-select","description":"Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"validation_regex":"^(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)$","representative":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"routes":{"display_label":"Routes","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","placeholder":"route-to-proxy","description":"Name of the route","description_kind":"plain","display":true},"dest_range":{"type":"string","description":"CIDR range of the destination","description_kind":"plain","placeholder":"10.0.0.0/24","display":true},"next_hop_ip":{"type":"string","description":"Next hop IP address","description_kind":"plain","placeholder":"10.1.0.0","display":true}}}},"fw_rules":{"display_label":"Ingress Firewall rules","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"name of the fw rule","description_kind":"plain","placeholder":"allow-ssh","display":true},"source_ranges":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist","description_kind":"plain","display":true},"ports":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist, Protocol is TCP","description_kind":"plain","display":true},"protocol":{"type":"string","field_type":"single-select","required":true,"description":"The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule","description_kind":"plain","display":true,"values":["tcp","udp","icmp","all"]},"target_service_accounts":{"type":["set","string"],"field_type":"multi-select","optional":true,"description":"The service accounts where this rule will be applied","description_kind":"plain","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}}},"description":"Fw rules for the VPC","description_kind":"plain"}}}},"boxId":"ytmbL65ING_a2IF5e25Mc","isDeleted":true,"resource":"google_compute_network"}],["qWT4rflNgdOfouksxcANl",{"documentation_url":"https://cloud.google.com/kubernetes-engine/docs/deploy-app-cluster","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The location of the kubernetes cluster","description_kind":"plain","placeholder":"us-central1","required":true,"gcp_resource":"region","display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","placeholder":"k9s-cluster-a","required":true,"display":true},"project":{"type":"string","field_type":"single-select","description":"The project ID of the GKE cluster","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"network":{"type":"string","field_type":"single-select","description":"Network of the GKE cluster","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"},"value":""},"subnetwork":{"type":"string","field_type":"single-select","description":"Subnet of the GKE cluster","description_kind":"plain","placeholder":"subnetwork-a","required":true,"display":true,"gcp_resource":"subnet","api_dependency":{"project":"block.attributes.project","region":"block.attributes.location"}},"pods_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for pods in the GKE cluster","description_kind":"plain","placeholder":"sec-range-a","required":true,"display":true},"services_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for services in the GKE cluster","description_kind":"plain","placeholder":"sec-range-b","required":true,"display":true},"min_master_version":{"type":"string","description":"The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version","description_kind":"plain","placeholder":"1.9.7-gke.N","display":true},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"node_pools":{"display_label":"Node Pools","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"Name of the node pool","description_kind":"plain","placeholder":"node-pool-a","display":true},"node_count":{"type":"number","description":"Number of nodes in the pool","description_kind":"plain","display":true},"node_locations":{"type":["set","string"],"description":"Node Locations","description_kind":"plain","display":true},"preemptible":{"type":"bool","description":"Nodes will be preemtible if true","description_kind":"plain","display":true},"machine_type":{"type":"string","description":"Machine type of the nodes","description_kind":"plain","placeholder":"e2-medium","display":true},"image_type":{"type":"string","description":"Image type of the nodes","description_kind":"plain","placeholder":"UBUNTU_CONTAINERD","display":true},"gke_version":{"type":"string","description":"Version of GKE","description_kind":"plain","placeholder":"1.9.7-gke.N","required":true,"display":true},"service_account":{"type":"string","field_type":"single-select","description":"Service account to be attached to the nodes in the nodepool","description_kind":"plain","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"scopes":{"type":["set","string"],"field_type":"multi-select","values":["cloud-platform"],"description":"OAuth scopes of the VMs in the nodepool","description_kind":"plain","display":true}}}}}},"boxId":"qWT4rflNgdOfouksxcANl","isDeleted":true,"resource":"gke"}],["NQh75nyHB1usHUHR1z4Ot",{"documentation_url":"https://cloud.google.com/vpc/docs/vpc","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","field_type":"single-select","description":"Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"validation_regex":"^(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)$","representative":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project","value":""},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"routes":{"display_label":"Routes","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","placeholder":"route-to-proxy","description":"Name of the route","description_kind":"plain","display":true},"dest_range":{"type":"string","description":"CIDR range of the destination","description_kind":"plain","placeholder":"10.0.0.0/24","display":true},"next_hop_ip":{"type":"string","description":"Next hop IP address","description_kind":"plain","placeholder":"10.1.0.0","display":true}}}},"fw_rules":{"display_label":"Ingress Firewall rules","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"name of the fw rule","description_kind":"plain","placeholder":"allow-ssh","display":true},"source_ranges":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist","description_kind":"plain","display":true},"ports":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist, Protocol is TCP","description_kind":"plain","display":true},"protocol":{"type":"string","field_type":"single-select","required":true,"description":"The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule","description_kind":"plain","display":true,"values":["tcp","udp","icmp","all"]},"target_service_accounts":{"type":["set","string"],"field_type":"multi-select","optional":true,"description":"The service accounts where this rule will be applied","description_kind":"plain","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}}},"description":"Fw rules for the VPC","description_kind":"plain"}}}},"boxId":"NQh75nyHB1usHUHR1z4Ot","isDeleted":true,"resource":"google_compute_network"}],["iKMbPK-SQF1Wpw3bvJSpa",{"documentation_url":"https://cloud.google.com/kubernetes-engine/docs/deploy-app-cluster","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The location of the kubernetes cluster","description_kind":"plain","placeholder":"us-central1","required":true,"gcp_resource":"region","display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","placeholder":"k9s-cluster-a","required":true,"display":true},"project":{"type":"string","field_type":"single-select","description":"The project ID of the GKE cluster","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"network":{"type":"string","field_type":"single-select","description":"Network of the GKE cluster","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"subnetwork":{"type":"string","field_type":"single-select","description":"Subnet of the GKE cluster","description_kind":"plain","placeholder":"subnetwork-a","required":true,"display":true,"gcp_resource":"subnet","api_dependency":{"project":"block.attributes.project","region":"block.attributes.location"}},"pods_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for pods in the GKE cluster","description_kind":"plain","placeholder":"sec-range-a","required":true,"display":true},"services_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for services in the GKE cluster","description_kind":"plain","placeholder":"sec-range-b","required":true,"display":true},"min_master_version":{"type":"string","description":"The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version","description_kind":"plain","placeholder":"1.9.7-gke.N","display":true},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"node_pools":{"display_label":"Node Pools","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"Name of the node pool","description_kind":"plain","placeholder":"node-pool-a","display":true},"node_count":{"type":"number","description":"Number of nodes in the pool","description_kind":"plain","display":true},"node_locations":{"type":["set","string"],"description":"Node Locations","description_kind":"plain","display":true},"preemptible":{"type":"bool","description":"Nodes will be preemtible if true","description_kind":"plain","display":true},"machine_type":{"type":"string","description":"Machine type of the nodes","description_kind":"plain","placeholder":"e2-medium","display":true},"image_type":{"type":"string","description":"Image type of the nodes","description_kind":"plain","placeholder":"UBUNTU_CONTAINERD","display":true},"gke_version":{"type":"string","description":"Version of GKE","description_kind":"plain","placeholder":"1.9.7-gke.N","required":true,"display":true},"service_account":{"type":"string","field_type":"single-select","description":"Service account to be attached to the nodes in the nodepool","description_kind":"plain","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"scopes":{"type":["set","string"],"field_type":"multi-select","values":["cloud-platform"],"description":"OAuth scopes of the VMs in the nodepool","description_kind":"plain","display":true}}}}}},"boxId":"iKMbPK-SQF1Wpw3bvJSpa","isDeleted":true,"resource":"gke"}],["1ZffgxEm7iEhX_jh3uJ65",{"documentation_url":"https://cloud.google.com/vpc/docs/vpc","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","field_type":"single-select","description":"Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"validation_regex":"^(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)$","representative":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"routes":{"display_label":"Routes","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","placeholder":"route-to-proxy","description":"Name of the route","description_kind":"plain","display":true},"dest_range":{"type":"string","description":"CIDR range of the destination","description_kind":"plain","placeholder":"10.0.0.0/24","display":true},"next_hop_ip":{"type":"string","description":"Next hop IP address","description_kind":"plain","placeholder":"10.1.0.0","display":true}}}},"fw_rules":{"display_label":"Ingress Firewall rules","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"name of the fw rule","description_kind":"plain","placeholder":"allow-ssh","display":true},"source_ranges":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist","description_kind":"plain","display":true},"ports":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist, Protocol is TCP","description_kind":"plain","display":true},"protocol":{"type":"string","field_type":"single-select","required":true,"description":"The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule","description_kind":"plain","display":true,"values":["tcp","udp","icmp","all"]},"target_service_accounts":{"type":["set","string"],"field_type":"multi-select","optional":true,"description":"The service accounts where this rule will be applied","description_kind":"plain","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}}},"description":"Fw rules for the VPC","description_kind":"plain"}}}},"boxId":"1ZffgxEm7iEhX_jh3uJ65","isDeleted":true,"resource":"google_compute_network"}],["FBRQR79WCfzcDxQf2qSz1",{"documentation_url":"https://cloud.google.com/kubernetes-engine/docs/deploy-app-cluster","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The location of the kubernetes cluster","description_kind":"plain","placeholder":"us-central1","required":true,"gcp_resource":"region","display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","placeholder":"k9s-cluster-a","required":true,"display":true},"project":{"type":"string","field_type":"single-select","description":"The project ID of the GKE cluster","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"network":{"type":"string","field_type":"single-select","description":"Network of the GKE cluster","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"},"value":""},"subnetwork":{"type":"string","field_type":"single-select","description":"Subnet of the GKE cluster","description_kind":"plain","placeholder":"subnetwork-a","required":true,"display":true,"gcp_resource":"subnet","api_dependency":{"project":"block.attributes.project","region":"block.attributes.location"}},"pods_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for pods in the GKE cluster","description_kind":"plain","placeholder":"sec-range-a","required":true,"display":true},"services_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for services in the GKE cluster","description_kind":"plain","placeholder":"sec-range-b","required":true,"display":true},"min_master_version":{"type":"string","description":"The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version","description_kind":"plain","placeholder":"1.9.7-gke.N","display":true},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"node_pools":{"display_label":"Node Pools","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"Name of the node pool","description_kind":"plain","placeholder":"node-pool-a","display":true},"node_count":{"type":"number","description":"Number of nodes in the pool","description_kind":"plain","display":true},"node_locations":{"type":["set","string"],"description":"Node Locations","description_kind":"plain","display":true},"preemptible":{"type":"bool","description":"Nodes will be preemtible if true","description_kind":"plain","display":true},"machine_type":{"type":"string","description":"Machine type of the nodes","description_kind":"plain","placeholder":"e2-medium","display":true},"image_type":{"type":"string","description":"Image type of the nodes","description_kind":"plain","placeholder":"UBUNTU_CONTAINERD","display":true},"gke_version":{"type":"string","description":"Version of GKE","description_kind":"plain","placeholder":"1.9.7-gke.N","required":true,"display":true},"service_account":{"type":"string","field_type":"single-select","description":"Service account to be attached to the nodes in the nodepool","description_kind":"plain","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"scopes":{"type":["set","string"],"field_type":"multi-select","values":["cloud-platform"],"description":"OAuth scopes of the VMs in the nodepool","description_kind":"plain","display":true}}}}}},"boxId":"FBRQR79WCfzcDxQf2qSz1","isDeleted":true,"resource":"gke"}],["quGgT6MXOAo7I1GUdu618",{"documentation_url":"https://cloud.google.com/kubernetes-engine/docs/deploy-app-cluster","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The location of the kubernetes cluster","description_kind":"plain","placeholder":"us-central1","required":true,"gcp_resource":"region","display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","placeholder":"k9s-cluster-a","required":true,"display":true},"project":{"type":"string","field_type":"single-select","description":"The project ID of the GKE cluster","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"network":{"type":"string","field_type":"single-select","description":"Network of the GKE cluster","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"subnetwork":{"type":"string","field_type":"single-select","description":"Subnet of the GKE cluster","description_kind":"plain","placeholder":"subnetwork-a","required":true,"display":true,"gcp_resource":"subnet","api_dependency":{"project":"block.attributes.project","region":"block.attributes.location"}},"pods_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for pods in the GKE cluster","description_kind":"plain","placeholder":"sec-range-a","required":true,"display":true},"services_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for services in the GKE cluster","description_kind":"plain","placeholder":"sec-range-b","required":true,"display":true},"min_master_version":{"type":"string","description":"The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version","description_kind":"plain","placeholder":"1.9.7-gke.N","display":true},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"node_pools":{"display_label":"Node Pools","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"Name of the node pool","description_kind":"plain","placeholder":"node-pool-a","display":true},"node_count":{"type":"number","description":"Number of nodes in the pool","description_kind":"plain","display":true},"node_locations":{"type":["set","string"],"description":"Node Locations","description_kind":"plain","display":true},"preemptible":{"type":"bool","description":"Nodes will be preemtible if true","description_kind":"plain","display":true},"machine_type":{"type":"string","description":"Machine type of the nodes","description_kind":"plain","placeholder":"e2-medium","display":true},"image_type":{"type":"string","description":"Image type of the nodes","description_kind":"plain","placeholder":"UBUNTU_CONTAINERD","display":true},"gke_version":{"type":"string","description":"Version of GKE","description_kind":"plain","placeholder":"1.9.7-gke.N","required":true,"display":true},"service_account":{"type":"string","field_type":"single-select","description":"Service account to be attached to the nodes in the nodepool","description_kind":"plain","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"scopes":{"type":["set","string"],"field_type":"multi-select","values":["cloud-platform"],"description":"OAuth scopes of the VMs in the nodepool","description_kind":"plain","display":true}}}}}},"boxId":"quGgT6MXOAo7I1GUdu618","isDeleted":true,"resource":"gke"}],["xUiJL3UPVgR8Msy3NuSMX",{"documentation_url":"https://cloud.google.com/kubernetes-engine/docs/deploy-app-cluster","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The location of the kubernetes cluster","description_kind":"plain","placeholder":"us-central1","required":true,"gcp_resource":"region","display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","placeholder":"k9s-cluster-a","required":true,"display":true},"project":{"type":"string","field_type":"single-select","description":"The project ID of the GKE cluster","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"network":{"type":"string","field_type":"single-select","description":"Network of the GKE cluster","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"subnetwork":{"type":"string","field_type":"single-select","description":"Subnet of the GKE cluster","description_kind":"plain","placeholder":"subnetwork-a","required":true,"display":true,"gcp_resource":"subnet","api_dependency":{"project":"block.attributes.project","region":"block.attributes.location"}},"pods_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for pods in the GKE cluster","description_kind":"plain","placeholder":"sec-range-a","required":true,"display":true},"services_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for services in the GKE cluster","description_kind":"plain","placeholder":"sec-range-b","required":true,"display":true},"min_master_version":{"type":"string","description":"The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version","description_kind":"plain","placeholder":"1.9.7-gke.N","display":true},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"node_pools":{"display_label":"Node Pools","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"Name of the node pool","description_kind":"plain","placeholder":"node-pool-a","display":true},"node_count":{"type":"number","description":"Number of nodes in the pool","description_kind":"plain","display":true},"node_locations":{"type":["set","string"],"description":"Node Locations","description_kind":"plain","display":true},"preemptible":{"type":"bool","description":"Nodes will be preemtible if true","description_kind":"plain","display":true},"machine_type":{"type":"string","description":"Machine type of the nodes","description_kind":"plain","placeholder":"e2-medium","display":true},"image_type":{"type":"string","description":"Image type of the nodes","description_kind":"plain","placeholder":"UBUNTU_CONTAINERD","display":true},"gke_version":{"type":"string","description":"Version of GKE","description_kind":"plain","placeholder":"1.9.7-gke.N","required":true,"display":true},"service_account":{"type":"string","field_type":"single-select","description":"Service account to be attached to the nodes in the nodepool","description_kind":"plain","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"scopes":{"type":["set","string"],"field_type":"multi-select","values":["cloud-platform"],"description":"OAuth scopes of the VMs in the nodepool","description_kind":"plain","display":true}}}}}},"boxId":"xUiJL3UPVgR8Msy3NuSMX","isDeleted":true,"resource":"gke"}],["rRg18D8ZBs9CfX193c9q8",{"documentation_url":"https://cloud.google.com/kubernetes-engine/docs/deploy-app-cluster","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The location of the kubernetes cluster","description_kind":"plain","placeholder":"us-central1","required":true,"gcp_resource":"region","display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","placeholder":"k9s-cluster-a","required":true,"display":true},"project":{"type":"string","field_type":"single-select","description":"The project ID of the GKE cluster","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"network":{"type":"string","field_type":"single-select","description":"Network of the GKE cluster","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"subnetwork":{"type":"string","field_type":"single-select","description":"Subnet of the GKE cluster","description_kind":"plain","placeholder":"subnetwork-a","required":true,"display":true,"gcp_resource":"subnet","api_dependency":{"project":"block.attributes.project","region":"block.attributes.location"}},"pods_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for pods in the GKE cluster","description_kind":"plain","placeholder":"sec-range-a","required":true,"display":true},"services_secondary_range_name":{"type":"string","description":"Name of the secondary IP range for services in the GKE cluster","description_kind":"plain","placeholder":"sec-range-b","required":true,"display":true},"min_master_version":{"type":"string","description":"The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version","description_kind":"plain","placeholder":"1.9.7-gke.N","display":true},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"node_pools":{"display_label":"Node Pools","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"Name of the node pool","description_kind":"plain","placeholder":"node-pool-a","display":true},"node_count":{"type":"number","description":"Number of nodes in the pool","description_kind":"plain","display":true},"node_locations":{"type":["set","string"],"description":"Node Locations","description_kind":"plain","display":true},"preemptible":{"type":"bool","description":"Nodes will be preemtible if true","description_kind":"plain","display":true},"machine_type":{"type":"string","description":"Machine type of the nodes","description_kind":"plain","placeholder":"e2-medium","display":true},"image_type":{"type":"string","description":"Image type of the nodes","description_kind":"plain","placeholder":"UBUNTU_CONTAINERD","display":true},"gke_version":{"type":"string","description":"Version of GKE","description_kind":"plain","placeholder":"1.9.7-gke.N","required":true,"display":true},"service_account":{"type":"string","field_type":"single-select","description":"Service account to be attached to the nodes in the nodepool","description_kind":"plain","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"scopes":{"type":["set","string"],"field_type":"multi-select","values":["cloud-platform"],"description":"OAuth scopes of the VMs in the nodepool","description_kind":"plain","display":true}}}}}},"boxId":"rRg18D8ZBs9CfX193c9q8","isDeleted":true,"resource":"gke"}],["AAf3trC5P8q_OHT59SwTB",{"documentation_url":"https://cloud.google.com/vpc/docs/vpc","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","field_type":"single-select","description":"Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"validation_regex":"^(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)$","representative":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"routes":{"display_label":"Routes","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","placeholder":"route-to-proxy","description":"Name of the route","description_kind":"plain","display":true},"dest_range":{"type":"string","description":"CIDR range of the destination","description_kind":"plain","placeholder":"10.0.0.0/24","display":true},"next_hop_ip":{"type":"string","description":"Next hop IP address","description_kind":"plain","placeholder":"10.1.0.0","display":true}}}},"fw_rules":{"display_label":"Ingress Firewall rules","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"name of the fw rule","description_kind":"plain","placeholder":"allow-ssh","display":true},"source_ranges":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist","description_kind":"plain","display":true},"ports":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist, Protocol is TCP","description_kind":"plain","display":true},"protocol":{"type":"string","field_type":"single-select","required":true,"description":"The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule","description_kind":"plain","display":true,"values":["tcp","udp","icmp","all"]},"target_service_accounts":{"type":["set","string"],"field_type":"multi-select","optional":true,"description":"The service accounts where this rule will be applied","description_kind":"plain","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}}},"description":"Fw rules for the VPC","description_kind":"plain"}}}},"boxId":"AAf3trC5P8q_OHT59SwTB","isDeleted":true,"resource":"google_compute_network"}],["XOMy8QrxWZ0K4rehh5TUj",{"documentation_url":"https://cloud.google.com/build/docs/build-push-docker-image","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","description":"Name of the trigger. Must be unique within the project.","description_kind":"plain","optional":true,"placeholder":"cb_git_trigger","computed":true,"display":true},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"service_account":{"type":"string","field_type":"single-select","description":"The service account used for all user-controlled operations including triggers.patch, triggers.run, builds.create, and builds.cancel. If no service account is set, then the standard Cloud Build service account ([PROJECT_NUM]@system.gserviceaccount.com) will be used instead.","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","description_kind":"plain","optional":true,"display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"git_file_source":{"nesting_mode":"list","display":true,"display_label":"git_file_source","block":{"attributes":{"path":{"type":"string","description":"The path of the file, with the repo root as the root of the path.","description_kind":"plain","required":true,"placeholder":"cloudbuild.yaml","display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"revision":{"type":"string","description":"The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.","description_kind":"plain","placeholder":"refs/heads/main","optional":true,"display":true},"uri":{"type":"string","description":"The URI of the repo (optional). If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","optional":true,"display":true}},"description":"The file source describing the local or remote Build template.","description_kind":"plain"},"max_items":1,"min_items":1},"source_to_build":{"nesting_mode":"list","display":true,"display_label":"source_to_build","block":{"attributes":{"ref":{"type":"string","description":"The branch or tag to use. Must start with \"refs/\" (required).","description_kind":"plain","placeholder":"refs/heads/main","required":true,"display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"uri":{"type":"string","description":"The URI of the repo (required).","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","required":true,"display":true}},"description":"The repo and ref of the repository from which to build. This field is used only for those triggers that do not respond to SCM events. Triggers that respond to such events build source at whatever commit caused the event. This field is currently only used by Webhook, Pub/Sub, Manual, and Cron triggers. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1},"webhook_config":{"nesting_mode":"list","display":true,"display_label":"webhook_config","block":{"attributes":{"secret":{"type":"resource","field_type":"resource","resource":"secret_manager_single_version","description":"Resource name for the secret required as a URL parameter.","description_kind":"plain","display":true}},"description":"WebhookConfig describes the configuration of a trigger that creates a build whenever a webhook is sent to a trigger's webhook URL. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1}},"description_kind":"plain"},"boxId":"XOMy8QrxWZ0K4rehh5TUj","isDeleted":true,"resource":"cloudbuild_git_trigger"}],["hzpvJNZ8CpRAPAjCV7wET",{"documentation_url":"https://cloud.google.com/build/docs/build-push-docker-image","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","description":"Name of the trigger. Must be unique within the project.","description_kind":"plain","optional":true,"placeholder":"cb_git_trigger","computed":true,"display":true},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"service_account":{"type":"string","field_type":"single-select","description":"The service account used for all user-controlled operations including triggers.patch, triggers.run, builds.create, and builds.cancel. If no service account is set, then the standard Cloud Build service account ([PROJECT_NUM]@system.gserviceaccount.com) will be used instead.","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","description_kind":"plain","optional":true,"display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"git_file_source":{"nesting_mode":"list","display":true,"display_label":"git_file_source","block":{"attributes":{"path":{"type":"string","description":"The path of the file, with the repo root as the root of the path.","description_kind":"plain","required":true,"placeholder":"cloudbuild.yaml","display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"revision":{"type":"string","description":"The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.","description_kind":"plain","placeholder":"refs/heads/main","optional":true,"display":true},"uri":{"type":"string","description":"The URI of the repo (optional). If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","optional":true,"display":true}},"description":"The file source describing the local or remote Build template.","description_kind":"plain"},"max_items":1,"min_items":1},"source_to_build":{"nesting_mode":"list","display":true,"display_label":"source_to_build","block":{"attributes":{"ref":{"type":"string","description":"The branch or tag to use. Must start with \"refs/\" (required).","description_kind":"plain","placeholder":"refs/heads/main","required":true,"display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"uri":{"type":"string","description":"The URI of the repo (required).","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","required":true,"display":true}},"description":"The repo and ref of the repository from which to build. This field is used only for those triggers that do not respond to SCM events. Triggers that respond to such events build source at whatever commit caused the event. This field is currently only used by Webhook, Pub/Sub, Manual, and Cron triggers. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1},"webhook_config":{"nesting_mode":"list","display":true,"display_label":"webhook_config","block":{"attributes":{"secret":{"type":"resource","field_type":"resource","resource":"secret_manager_single_version","description":"Resource name for the secret required as a URL parameter.","description_kind":"plain","display":true}},"description":"WebhookConfig describes the configuration of a trigger that creates a build whenever a webhook is sent to a trigger's webhook URL. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1}},"description_kind":"plain"},"boxId":"hzpvJNZ8CpRAPAjCV7wET","isDeleted":true,"resource":"cloudbuild_git_trigger"}],["kLidXBsuXTZeh2Z2UdLlI",{"documentation_url":"https://cloud.google.com/build/docs/build-push-docker-image","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","description":"Name of the trigger. Must be unique within the project.","description_kind":"plain","optional":true,"placeholder":"cb_git_trigger","computed":true,"display":true},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"gcp_resource":"project","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"service_account":{"type":"string","field_type":"single-select","description":"The service account used for all user-controlled operations including triggers.patch, triggers.run, builds.create, and builds.cancel. If no service account is set, then the standard Cloud Build service account ([PROJECT_NUM]@system.gserviceaccount.com) will be used instead.","placeholder":"adt-backend@prj-adt-terraform-1f1d1.iam.gserviceaccount.com","description_kind":"plain","optional":true,"display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"git_file_source":{"nesting_mode":"list","display":true,"display_label":"git_file_source","block":{"attributes":{"path":{"type":"string","description":"The path of the file, with the repo root as the root of the path.","description_kind":"plain","required":true,"placeholder":"cloudbuild.yaml","display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"revision":{"type":"string","description":"The branch, tag, arbitrary ref, or SHA version of the repo to use when resolving the filename (optional). This field respects the same syntax/resolution as described here: https://git-scm.com/docs/gitrevisions If unspecified, the revision from which the trigger invocation originated is assumed to be the revision from which to read the specified path.","description_kind":"plain","placeholder":"refs/heads/main","optional":true,"display":true},"uri":{"type":"string","description":"The URI of the repo (optional). If unspecified, the repo from which the trigger invocation originated is assumed to be the repo from which to read the specified path.","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","optional":true,"display":true}},"description":"The file source describing the local or remote Build template.","description_kind":"plain"},"max_items":1,"min_items":1},"source_to_build":{"nesting_mode":"list","display":true,"display_label":"source_to_build","block":{"attributes":{"ref":{"type":"string","description":"The branch or tag to use. Must start with \"refs/\" (required).","description_kind":"plain","placeholder":"refs/heads/main","required":true,"display":true},"repo_type":{"type":"string","field_type":"single-select","description":"The type of the repo, since it may not be explicit from the repo field (e.g from a URL). Values can be UNKNOWN, CLOUD_SOURCE_REPOSITORIES, GITHUB Possible values: [\"UNKNOWN\", \"CLOUD_SOURCE_REPOSITORIES\", \"GITHUB\"]","description_kind":"plain","placeholder":"GITHUB","required":true,"display":true,"values":["UNKNOWN","CLOUD_SOURCE_REPOSITORIES","GITHUB"]},"uri":{"type":"string","description":"The URI of the repo (required).","description_kind":"plain","placeholder":"https://hashicorp/terraform-provider-google-beta","required":true,"display":true}},"description":"The repo and ref of the repository from which to build. This field is used only for those triggers that do not respond to SCM events. Triggers that respond to such events build source at whatever commit caused the event. This field is currently only used by Webhook, Pub/Sub, Manual, and Cron triggers. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1},"webhook_config":{"nesting_mode":"list","display":true,"display_label":"webhook_config","block":{"attributes":{"secret":{"type":"resource","field_type":"resource","resource":"secret_manager_single_version","description":"Resource name for the secret required as a URL parameter.","description_kind":"plain","display":true}},"description":"WebhookConfig describes the configuration of a trigger that creates a build whenever a webhook is sent to a trigger's webhook URL. One of 'trigger_template', 'github', 'pubsub_config' 'webhook_config' or 'source_to_build' must be provided.","description_kind":"plain"},"max_items":1,"min_items":1}},"description_kind":"plain"},"boxId":"kLidXBsuXTZeh2Z2UdLlI","isDeleted":true,"resource":"cloudbuild_git_trigger"}],["FV69FXJ4PIlJiH340IvLT",{"documentation_url":"https://cloud.google.com/storage/docs/buckets","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The Google Cloud Storage location","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"gcp_resource":"region","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$"},"name":{"type":"string","field_type":"single-select","description":"The name of the bucket.","description_kind":"plain","required":true,"placeholder":"helloworld-bucket","display":true,"validation_regex":"^(?!goog)(?!.*google).*(?:[a-z](?:[\\-_.a-z0-9]{2,61}[a-z0-9])?)","representative":true,"gcp_resource":"gcs_bucket","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description":"The ID of the project in which the resource belongs. If it is not provided, the provider project is used.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","computed":true,"display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project"},"storage_class":{"type":"string","field_type":"single-select","description":"The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.","description_kind":"plain","optional":true,"placeholder":"STANDARD","display":true,"validation_regex":"(NEARLINE|ARCHIVE|COLDLINE|STANDARD)","values":["STANDARD","NEARLINE","COLDLINE","ARCHIVE"]},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"FV69FXJ4PIlJiH340IvLT","isDeleted":true,"resource":"google_storage_bucket"}],["rCkbsZl5tCzAsNPaJki8x",{"documentation_url":"https://cloud.google.com/bigquery/docs/datasets#terraform","version":0,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"dataset_id":{"type":"string","description":"A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.","description_kind":"plain","placeholder":"foo","display":true,"required":true},"friendly_name":{"type":"string","description":"Friendly name.","description_kind":"plain","display":true,"placeholder":"foo","optional":true},"location":{"type":"string","field_type":"single-select","description":"The geographic location where the dataset should reside. See [official docs](https://cloud.google.com/bigquery/docs/dataset-locations). There are two types of locations, regional or multi-regional. A regional location is a specific geographic place, such as Tokyo, and a multi-regional location is a large geographic area, such as the United States, that contains at least two geographic places. The default value is multi-regional location 'US'. Changing this forces a new resource to be created.","description_kind":"plain","display":true,"placeholder":"US","optional":true,"gcp_resource":"region","message":""},"project":{"type":"string","field_type":"single-select","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"computed":true,"gcp_resource":"project","message":"Required"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"tables":{"nesting_mode":"list","display":true,"display_label":"tables","block":{"attributes":{"friendly_name":{"type":"string","description":"A descriptive name for the table.","placeholder":"table-a","display":true,"description_kind":"plain","optional":true},"schema":{"type":"string","description":"A JSON schema for the table.","description_kind":"plain","display":true,"optional":true,"computed":true},"table_id":{"type":"string","description":"A unique ID for the resource. Changing this forces a new resource to be created.","description_kind":"plain","placeholder":"sheet","display":true,"required":true}}}}},"description_kind":"plain"},"boxId":"rCkbsZl5tCzAsNPaJki8x","isDeleted":true,"resource":"google_bigquery_dataset"}],["xKHUnyB9oVjnPJ1dqEWl3",{"documentation_url":"https://cloud.google.com/functions/docs/writing","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"docker_registry":{"type":"string","field_type":"single-select","description":"Docker Registry to use for storing the function's Docker images. Allowed values are CONTAINER_REGISTRY (default) and ARTIFACT_REGISTRY.","description_kind":"plain","optional":true,"computed":true,"placeholder":"CONTAINER_REGISTRY","display":true,"values":["CONTAINER_REGISTRY","ARTIFACT_REGISTRY"]},"docker_repository":{"type":"string","description":"User managed repository created in Artifact Registry optionally with a customer managed encryption key. If specified, deployments will use Artifact Registry for storing images built with Cloud Build.","description_kind":"plain","optional":true,"placeholder":"gcr.io/cloudrun","display":true},"entry_point":{"type":"string","description":"Name of the function that will be executed when the Google Cloud Function is triggered.","description_kind":"plain","optional":true,"placeholder":"entrypoint_method","display":true},"name":{"type":"string","description":"A user-defined name of the function. Function names must be unique globally.","description_kind":"plain","required":true,"display":true,"placeholder":"appservice-method","validation_regex":"^(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)$"},"project":{"type":"string","field_type":"single-select","description":"Project of the function. If it is not provided, the provider project is used.","description_kind":"plain","required":true,"computed":true,"display":true,"gcp_resource":"project","placeholder":"prj-adt-terraform","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","message":"Required"},"region":{"type":"string","field_type":"single-select","description":"Region of function. If it is not provided, the provider region is used.","description_kind":"plain","optional":true,"computed":true,"display":true,"gcp_resource":"region","placeholder":"us-central1","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","message":"Invalid format"},"runtime":{"type":"string","field_type":"single-select","description":"The runtime in which the function is going to run. Eg. \"nodejs8\", \"nodejs10\", \"python37\", \"go111\".","description_kind":"plain","required":true,"placeholder":"python37","display":true,"values":["nodejs8","nodejs10","python37","go111"]},"source_archive_bucket":{"type":"string","field_type":"single-select","description":"The GCS bucket containing the zip archive which contains the function.","description_kind":"plain","optional":true,"placeholder":"source_cf_bucket","display":true,"gcp_resource":"gcs_bucket","api_dependency":{"project":"block.attributes.project"}},"source_archive_object":{"type":"string","description":"The source archive object (file) in archive bucket.","description_kind":"plain","optional":true,"placeholder":"cf_objects/helloworld","display":true},"trigger_http":{"type":"bool","field_type":"single-select","description":"Boolean variable. Any HTTP request (of a supported type) to the endpoint will trigger function execution. Supported HTTP request types are: POST, PUT, GET, DELETE, and OPTIONS. Endpoint is returned as https_trigger_url. Cannot be used with trigger_bucket and trigger_topic.","description_kind":"plain","optional":true,"placeholder":"GET","display":true,"values":["POST","PUT","GET","DELETE","OPTIONS"]},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"pubsub_event_trigger":{"nesting_mode":"list","display":true,"display_label":"pubsub event trigger","block":{"attributes":{"event_type":{"type":"string","display":true,"description":"The type of event to observe. For example: \"google.storage.object.finalize\". See the documentation on calling Cloud Functions for a full reference of accepted triggers.","description_kind":"plain","placeholder":"google.storage.object.finalize","required":true},"resource":{"type":"resource","field_type":"resource","resource":"google_pubsub_topic","description":"pubsub topic.","description_kind":"plain","display":true,"required":true}},"block_types":{},"description":"A source that fires events in response to a condition in another service. Cannot be used with trigger_http.","description_kind":"plain"},"max_items":1},"cloud_storage_event_trigger":{"nesting_mode":"list","display":true,"display_label":"cloud storage event trigger","block":{"attributes":{"event_type":{"type":"string","description":"The type of event to observe. For example: \"google.storage.object.finalize\". See the documentation on calling Cloud Functions for a full reference of accepted triggers.","description_kind":"plain","placeholder":"google.storage.object.finalize","required":true,"display":true},"resource":{"type":"resource","field_type":"resource","resource":"google_storage_bucket","description":"storage bucket.","description_kind":"plain","display":true,"required":true}},"block_types":{},"description":"A source that fires events in response to a condition in another service. Cannot be used with trigger_http.","description_kind":"plain"},"max_items":1},"source_repository":{"nesting_mode":"list","display":true,"display_label":"Source repository","block":{"attributes":{"url":{"type":"string","description":"The URL pointing to the hosted repository where the function is defined. There are supported Cloud Source Repository URLs in the following formats","description_kind":"plain","placeholder":"https://source.developers.google.com/projects/prj-adt-terraform/repos/helloworld","required":true,"display":true}},"description":"Represents parameters related to source repository where a function is hosted. Cannot be set alongside source_archive_bucket or source_archive_object.","description_kind":"plain"},"max_items":1,"min_items":1},"blockTypeLists":{"source_repository":[{"key":"_3jRQfb3WLZOeHNTTjCO0","value":{"nesting_mode":"list","display":true,"display_label":"Source repository","block":{"attributes":{"url":{"type":"string","description":"The URL pointing to the hosted repository where the function is defined. There are supported Cloud Source Repository URLs in the following formats","description_kind":"plain","placeholder":"https://source.developers.google.com/projects/prj-adt-terraform/repos/helloworld","required":true,"display":true}},"description":"Represents parameters related to source repository where a function is hosted. Cannot be set alongside source_archive_bucket or source_archive_object.","description_kind":"plain"},"max_items":1,"min_items":1}}]}}},"boxId":"xKHUnyB9oVjnPJ1dqEWl3","isDeleted":true,"resource":"google_cloudfunctions_function"}],["rLR6xsPDNiM8uM_dWPxfI",{"documentation_url":"https://cloud.google.com/storage/docs/buckets","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The Google Cloud Storage location","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"gcp_resource":"region","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","message":"Required"},"name":{"type":"string","field_type":"single-select","description":"The name of the bucket.","description_kind":"plain","required":true,"placeholder":"helloworld-bucket","display":true,"validation_regex":"^(?!goog)(?!.*google).*(?:[a-z](?:[\\-_.a-z0-9]{2,61}[a-z0-9])?)","representative":true,"gcp_resource":"gcs_bucket","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description":"The ID of the project in which the resource belongs. If it is not provided, the provider project is used.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","computed":true,"display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project","message":"Required"},"storage_class":{"type":"string","field_type":"single-select","description":"The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.","description_kind":"plain","optional":true,"placeholder":"STANDARD","display":true,"validation_regex":"(NEARLINE|ARCHIVE|COLDLINE|STANDARD)","values":["STANDARD","NEARLINE","COLDLINE","ARCHIVE"]},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"boxId":"rLR6xsPDNiM8uM_dWPxfI","isDeleted":true,"resource":"google_storage_bucket"}],["FEZbF8emwr8sBIQIdLqP6",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"region","boxId":"FEZbF8emwr8sBIQIdLqP6","isDeleted":true}],["5ES4MFO4ILeOhE5czPW70",{"documentation_url":"https://cloud.google.com/resource-manager/docs/creating-managing-projects","version":1,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"billing_account":{"type":"string","description":"The alphanumeric ID of the billing account this project belongs to. The user or service account performing this operation with Terraform must have Billing Account Administrator privileges (roles/billing.admin) in the organization. See Google Cloud Billing API Access Control for more details.","description_kind":"plain","optional":true,"placeholder":"011DC8-DA44DB-216504","display":true},"folder_id":{"type":"string","description":"The numeric ID of the folder this project should be created under. Only one of org_id or folder_id may be specified. If the folder_id is specified, then the project is created under the specified folder. Changing this forces the project to be migrated to the newly specified folder.","description_kind":"plain","placeholder":"191953190635","optional":true,"display":true},"name":{"type":"string","description":"The display name of the project.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)"},"org_id":{"type":"string","description":"The numeric ID of the organization this project belongs to. Changing this forces a new project to be created. Only one of org_id or folder_id may be specified. If the org_id is specified then the project is created at the top level. Changing this forces the project to be migrated to the newly specified organization.","description_kind":"plain","placeholder":"991249987803","optional":true,"display":true},"project_id":{"type":"string","field_type":"single-select","description":"The project ID. Changing this forces a new project to be created.","description_kind":"plain","required":true,"display":true,"placeholder":"prj-adt-terraform","validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","representative":true,"gcp_resource":"project"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"google_project","boxId":"5ES4MFO4ILeOhE5czPW70","isDeleted":true}],["eMQXcLzYgKT5owHVTU7js",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"region","boxId":"eMQXcLzYgKT5owHVTU7js","isDeleted":true}],["_xHOs6O_f0-L1-0bjUp1d",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"region","boxId":"_xHOs6O_f0-L1-0bjUp1d","isDeleted":true}],["KdbyS0y_Vhwiuzl-dkmH3",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"region","boxId":"KdbyS0y_Vhwiuzl-dkmH3","isDeleted":true}],["8pNX46VkoXMp4RbBRMw3D",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"region","boxId":"8pNX46VkoXMp4RbBRMw3D","isDeleted":true}],["h3pxPecv7fjSj5K6Z5Gk2",{"documentation_url":"https://cloud.google.com/vpc/docs/vpc","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"name":{"type":"string","field_type":"single-select","description":"Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.","description_kind":"plain","placeholder":"network-a","required":true,"display":true,"validation_regex":"^(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)$","representative":true,"gcp_resource":"network","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description_kind":"plain","optional":true,"computed":true,"placeholder":"prj-adt-terraform","display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project","message":""},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"routes":{"display_label":"Routes","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","placeholder":"route-to-proxy","description":"Name of the route","description_kind":"plain","display":true},"dest_range":{"type":"string","description":"CIDR range of the destination","description_kind":"plain","placeholder":"10.0.0.0/24","display":true},"next_hop_ip":{"type":"string","description":"Next hop IP address","description_kind":"plain","placeholder":"10.1.0.0","display":true}}}},"fw_rules":{"display_label":"Ingress Firewall rules","nesting_mode":"list","display":true,"block":{"attributes":{"name":{"type":"string","description":"name of the fw rule","description_kind":"plain","placeholder":"allow-ssh","display":true},"source_ranges":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist","description_kind":"plain","display":true},"ports":{"type":["set","string"],"optional":true,"description":"Source ranges to whitelist, Protocol is TCP","description_kind":"plain","display":true},"protocol":{"type":"string","field_type":"single-select","required":true,"description":"The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule","description_kind":"plain","display":true,"values":["tcp","udp","icmp","all"]},"target_service_accounts":{"type":["set","string"],"field_type":"multi-select","optional":true,"description":"The service accounts where this rule will be applied","description_kind":"plain","display":true,"gcp_resource":"service_account","api_dependency":{"project":"block.attributes.project"}}},"description":"Fw rules for the VPC","description_kind":"plain"}}}},"resource":"google_compute_network","boxId":"h3pxPecv7fjSj5K6Z5Gk2","isDeleted":true}],["qs-YJyCmmB9OUljffRRju",{"documentation_url":"https://cloud.google.com/storage/docs/buckets","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The Google Cloud Storage location","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"gcp_resource":"region","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","message":"Required"},"name":{"type":"string","field_type":"single-select","description":"The name of the bucket.","description_kind":"plain","required":true,"placeholder":"helloworld-bucket","display":true,"validation_regex":"^(?!goog)(?!.*google).*(?:[a-z](?:[\\-_.a-z0-9]{2,61}[a-z0-9])?)","representative":true,"gcp_resource":"gcs_bucket","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description":"The ID of the project in which the resource belongs. If it is not provided, the provider project is used.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","computed":true,"display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project","message":"Required"},"storage_class":{"type":"string","field_type":"single-select","description":"The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.","description_kind":"plain","optional":true,"placeholder":"STANDARD","display":true,"validation_regex":"(NEARLINE|ARCHIVE|COLDLINE|STANDARD)","values":["STANDARD","NEARLINE","COLDLINE","ARCHIVE"]},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"google_storage_bucket","boxId":"qs-YJyCmmB9OUljffRRju","isDeleted":true}],["rkmLEAcAmdweSG5IfBg2F",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"region","boxId":"rkmLEAcAmdweSG5IfBg2F","isDeleted":true}],["bJnODD4H6mYBEBOuchIfG",{"documentation_url":"https://cloud.google.com/storage/docs/buckets","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The Google Cloud Storage location","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"gcp_resource":"region","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","message":"Required"},"name":{"type":"string","field_type":"single-select","description":"The name of the bucket.","description_kind":"plain","required":true,"placeholder":"helloworld-bucket","display":true,"validation_regex":"^(?!goog)(?!.*google).*(?:[a-z](?:[\\-_.a-z0-9]{2,61}[a-z0-9])?)","representative":true,"gcp_resource":"gcs_bucket","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description":"The ID of the project in which the resource belongs. If it is not provided, the provider project is used.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","computed":true,"display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project","message":"Required"},"storage_class":{"type":"string","field_type":"single-select","description":"The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.","description_kind":"plain","optional":true,"placeholder":"STANDARD","display":true,"validation_regex":"(NEARLINE|ARCHIVE|COLDLINE|STANDARD)","values":["STANDARD","NEARLINE","COLDLINE","ARCHIVE"]},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"google_storage_bucket","boxId":"bJnODD4H6mYBEBOuchIfG","isDeleted":true}],["rCN2dA6OQ5J36e7vnIvfV",{"documentation_url":"https://cloud.google.com/compute/docs/regions-zones","deployable":false,"block":{"attributes":{"region":{"type":"string","field_type":"single-select","description":"Region","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","gcp_resource":"region","api_dependency":{"project":""}},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"region","boxId":"rCN2dA6OQ5J36e7vnIvfV","isDeleted":true}],["3gFsZXR9GmruBeduu2j_0",{"documentation_url":"https://cloud.google.com/bigquery/docs/datasets#terraform","version":0,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"dataset_id":{"type":"string","description":"A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.","description_kind":"plain","placeholder":"foo","display":true,"required":true},"friendly_name":{"type":"string","description":"Friendly name.","description_kind":"plain","display":true,"placeholder":"foo","optional":true},"location":{"type":"string","field_type":"single-select","description":"The geographic location where the dataset should reside. See [official docs](https://cloud.google.com/bigquery/docs/dataset-locations). There are two types of locations, regional or multi-regional. A regional location is a specific geographic place, such as Tokyo, and a multi-regional location is a large geographic area, such as the United States, that contains at least two geographic places. The default value is multi-regional location 'US'. Changing this forces a new resource to be created.","description_kind":"plain","display":true,"placeholder":"US","optional":true,"gcp_resource":"region","message":""},"project":{"type":"string","field_type":"single-select","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"computed":true,"gcp_resource":"project","message":"Required"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"tables":{"nesting_mode":"list","display":true,"display_label":"tables","block":{"attributes":{"friendly_name":{"type":"string","description":"A descriptive name for the table.","placeholder":"table-a","display":true,"description_kind":"plain","optional":true},"schema":{"type":"string","description":"A JSON schema for the table.","description_kind":"plain","display":true,"optional":true,"computed":true},"table_id":{"type":"string","description":"A unique ID for the resource. Changing this forces a new resource to be created.","description_kind":"plain","placeholder":"sheet","display":true,"required":true}}}},"blockTypeLists":{}},"description_kind":"plain"},"resource":"google_bigquery_dataset","boxId":"3gFsZXR9GmruBeduu2j_0","isDeleted":true}],["tEHMDJW1BQg7FaZVYB0Mv",{"documentation_url":"https://cloud.google.com/bigquery/docs/datasets#terraform","version":0,"block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"dataset_id":{"type":"string","description":"A unique ID for this dataset, without the project name. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.","description_kind":"plain","placeholder":"foo","display":true,"required":true},"friendly_name":{"type":"string","description":"Friendly name.","description_kind":"plain","display":true,"placeholder":"foo","optional":true},"location":{"type":"string","field_type":"single-select","description":"The geographic location where the dataset should reside. See [official docs](https://cloud.google.com/bigquery/docs/dataset-locations). There are two types of locations, regional or multi-regional. A regional location is a specific geographic place, such as Tokyo, and a multi-regional location is a large geographic area, such as the United States, that contains at least two geographic places. The default value is multi-regional location 'US'. Changing this forces a new resource to be created.","description_kind":"plain","display":true,"placeholder":"US","optional":true,"gcp_resource":"region","message":""},"project":{"type":"string","field_type":"single-select","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","display":true,"computed":true,"gcp_resource":"project","message":"Required"},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}},"block_types":{"tables":{"nesting_mode":"list","display":true,"display_label":"tables","block":{"attributes":{"friendly_name":{"type":"string","description":"A descriptive name for the table.","placeholder":"table-a","display":true,"description_kind":"plain","optional":true},"schema":{"type":"string","description":"A JSON schema for the table.","description_kind":"plain","display":true,"optional":true,"computed":true},"table_id":{"type":"string","description":"A unique ID for the resource. Changing this forces a new resource to be created.","description_kind":"plain","placeholder":"sheet","display":true,"required":true}}}}},"description_kind":"plain"},"resource":"google_bigquery_dataset","boxId":"tEHMDJW1BQg7FaZVYB0Mv","isDeleted":true}],["dEjwXMcHNQX6p0ysPgXGU",{"documentation_url":"https://cloud.google.com/storage/docs/buckets","block":{"attributes":{"exists":{"type":"bool","description_kind":"plain","display":true},"location":{"type":"string","field_type":"single-select","description":"The Google Cloud Storage location","description_kind":"plain","required":true,"placeholder":"us-central1","display":true,"gcp_resource":"region","validation_regex":"[a-z]-[a-z]+[0-9]{1}?$","message":"Required"},"name":{"type":"string","field_type":"single-select","description":"The name of the bucket.","description_kind":"plain","required":true,"placeholder":"helloworld-bucket","display":true,"validation_regex":"^(?!goog)(?!.*google).*(?:[a-z](?:[\\-_.a-z0-9]{2,61}[a-z0-9])?)","representative":true,"gcp_resource":"gcs_bucket","api_dependency":{"project":"block.attributes.project"}},"project":{"type":"string","field_type":"single-select","description":"The ID of the project in which the resource belongs. If it is not provided, the provider project is used.","description_kind":"plain","required":true,"placeholder":"prj-adt-terraform","computed":true,"display":true,"validation_regex":"(^(?=.{6,30}$)[a-z]([-a-z0-9]*[a-z0-9])?$)","gcp_resource":"project","message":"Required"},"storage_class":{"type":"string","field_type":"single-select","description":"The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE.","description_kind":"plain","optional":true,"placeholder":"STANDARD","display":true,"validation_regex":"(NEARLINE|ARCHIVE|COLDLINE|STANDARD)","values":["STANDARD","NEARLINE","COLDLINE","ARCHIVE"]},"team":{"type":"string","description":"The team name that will manage this resource. Its always a good idea to have teams maange their own infrastructure. Specifying a team for this resource will create a logical segregation in terraform for that specific team for better operational efficiency, security and scalability. Choosing to keep this blank will not create any logical segregation","description_kind":"plain","placeholder":"paymentsSRE","display":true,"non_validation_regex":"[^0-9A-Za-z_-]"},"environment":{"type":"string","description":"The environment in which the resource should be deployed. Its always a good idea to isolate the management of infrastructure based on environments. For example, if you have environments dev, qa and prod, the management of dev infrastructure should be isolated from qa and prod. If you are not sure about the environment or are just willing to try things out, go ahead and choose dev","description_kind":"plain","placeholder":"dev","dropdown":true,"field_type":"single-select","values":["dev","qa","prod","staging"],"display":true,"non_validation_regex":"[^0-9A-Za-z_-]"}}},"resource":"google_storage_bucket","boxId":"dEjwXMcHNQX6p0ysPgXGU","isDeleted":true}]],"canvasElements":{"elements":[{"type":"rectangle","version":787,"versionNonce":1195640018,"isDeleted":true,"id":"TweuPsQzOu7c7aHV7ONZf","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":-940,"y":-160,"strokeColor":"#d5d7dc","backgroundColor":"#FFF","width":1020,"height":880,"seed":2045804161,"groupIds":[],"strokeSharpness":"sharp","boundElements":[{"id":"5NHi5KE_nu-zXqdTwd3J_","type":"arrow"}],"updated":1697744829076,"link":null,"locked":false,"customData":{"boxId":"UHRN8URZWaOiEoegPEZvR","label":"Region","resource":"region","type":"container"}},{"type":"rectangle","version":589,"versionNonce":1116268878,"isDeleted":true,"id":"wKTrcpxO8PsdclzHx7PUv","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":-920,"y":40,"strokeColor":"#FFFFFF","backgroundColor":"#f1f3f4","width":980,"height":660,"seed":977102351,"groupIds":["F0_vNv7sRzKFZ64C9vadj"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829076,"link":null,"locked":false,"customData":{"boxId":"xL5R-mC3JM90QTsSNUJjX","label":"Project","resource":"google_project","type":"container"}},{"type":"text","version":297,"versionNonce":902797970,"isDeleted":true,"id":"CcjLsb-15L9oGdL1Ke4aF","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":1,"opacity":80,"angle":0,"x":-900,"y":60,"strokeColor":"#202124","backgroundColor":"transparent","width":191,"height":23,"seed":524224097,"groupIds":["F0_vNv7sRzKFZ64C9vadj"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829076,"link":null,"locked":false,"customData":{"boxId":"xL5R-mC3JM90QTsSNUJjX","label":"Project","resource":"google_project","type":"child"},"fontSize":20,"fontFamily":2,"text":"Google Cloud Project","baseline":19,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Google Cloud Project"},{"type":"rectangle","version":660,"versionNonce":75141006,"isDeleted":true,"id":"_whdePPavnbZlToM2QxIB","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":-900,"y":100,"strokeColor":"#4285f4","backgroundColor":"#d2e3fc","width":940,"height":580,"seed":1021561903,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829076,"link":null,"locked":false,"customData":{"boxId":"vqRNLI_Kb6tOOTPDWKqb4","label":"Region","resource":"region","type":"container"}},{"type":"text","version":338,"versionNonce":31619154,"isDeleted":true,"id":"ofS3NZ8EAbsLNLqCrXDI6","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":1,"opacity":80,"angle":0,"x":-480,"y":120,"strokeColor":"#202124","backgroundColor":"transparent","width":106,"height":19,"seed":1295094337,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"vqRNLI_Kb6tOOTPDWKqb4","label":"Region","resource":"region","type":"child"},"fontSize":16,"fontFamily":2,"text":"APPLICATION","baseline":15,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"APPLICATION"},{"type":"rectangle","version":632,"versionNonce":1574792654,"isDeleted":true,"id":"nuE-AcFQrwLl8JaHXKzu4","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":-920,"y":-140,"strokeColor":"#4285f4","backgroundColor":"#d2e3fc","width":980,"height":160,"seed":102264399,"groupIds":[],"strokeSharpness":"sharp","boundElements":[{"id":"5NHi5KE_nu-zXqdTwd3J_","type":"arrow"}],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"fbaE_gb4igPrw0Kv6UKau","label":"Region","resource":"region","type":"container"}},{"type":"text","version":452,"versionNonce":190029330,"isDeleted":true,"id":"pYI7fsbeQMcJFPj3LG4fy","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":1,"opacity":80,"angle":0,"x":-480,"y":-120,"strokeColor":"#202124","backgroundColor":"transparent","width":127,"height":19,"seed":1487381025,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"iaxbfHV-ny455ElfBgSN0","label":"Region","resource":"region","type":"child"},"fontSize":16.444444444444446,"fontFamily":2,"text":"DATA SOURCES","baseline":15,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"DATA SOURCES"},{"type":"arrow","version":973,"versionNonce":1003127822,"isDeleted":true,"id":"5NHi5KE_nu-zXqdTwd3J_","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":300,"y":40,"strokeColor":"#202124","backgroundColor":"#202124","width":0,"height":166.73200709877102,"seed":548654191,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"startBinding":null,"endBinding":null,"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[0,166.73200709877102]],"fontFamily":2},{"type":"ellipse","version":348,"versionNonce":521800658,"isDeleted":true,"id":"IEhGqxbkEOsoOOko2ME6x","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":-660,"y":40,"strokeColor":"#202124","backgroundColor":"#202124","width":32,"height":32,"seed":1318106625,"groupIds":["66Cio6jsLLNEz3glASI5T"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"DFr5kjaC9Tw49svyYpGo5","label":"Step Circle","type":"child"}},{"type":"text","version":308,"versionNonce":3854926,"isDeleted":true,"id":"f5Tc1omoRGkO-YgcHdYpW","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":-649.5,"y":48,"strokeColor":"#FFFFFF","backgroundColor":"#202124","width":9,"height":16,"seed":679372431,"groupIds":["66Cio6jsLLNEz3glASI5T"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"DFr5kjaC9Tw49svyYpGo5","label":"Step Circle","type":"child"},"fontSize":14,"fontFamily":2,"text":"1","baseline":13,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"1"},{"type":"rectangle","version":721,"versionNonce":1397539218,"isDeleted":true,"id":"W4vr0jThzdyF3CaN5h1QJ","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":0,"y":-200,"strokeColor":"#d5d7dc","backgroundColor":"#d5d7dc","width":1020,"height":60,"seed":1911311841,"groupIds":[],"strokeSharpness":"sharp","boundElements":[{"id":"5NHi5KE_nu-zXqdTwd3J_","type":"arrow"}],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"Zlb5FtWCuto_voxL_bzkO","label":"Region","resource":"region","type":"container"}},{"type":"text","version":372,"versionNonce":1711757454,"isDeleted":true,"id":"PO9qh5wN3DWqz1Vt032UR","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":1,"opacity":80,"angle":0,"x":420,"y":-180,"strokeColor":"#202124","backgroundColor":"transparent","width":182,"height":32,"seed":741391535,"groupIds":["IMp4GXHDCtP_Gy4P2k2fO"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"LKICWKVtjNK_KOm00c4ac","label":"Project","resource":"google_project","type":"child"},"fontSize":28,"fontFamily":2,"text":"Secure CI/CD ","baseline":26,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"Secure CI/CD "},{"type":"rectangle","version":170,"versionNonce":1663221586,"isDeleted":true,"id":"9pzAwHcckCuZ_EMGiVVQq","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":260,"y":-60,"strokeColor":"#202124","backgroundColor":"#FFF","width":82,"height":82,"seed":2043275713,"groupIds":["AYv0wsur7fEYqlhjXsubW"],"strokeSharpness":"round","boundElements":[{"id":"5NHi5KE_nu-zXqdTwd3J_","type":"arrow"}],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GZbAXxKnLefTL2_PFb4xy"}},{"type":"text","version":166,"versionNonce":1692997326,"isDeleted":true,"id":"Q311PDWZw9PW8V80hkp_D","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":276,"y":-12,"strokeColor":"#202124","backgroundColor":"transparent","width":50,"height":18,"seed":1332956879,"groupIds":["AYv0wsur7fEYqlhjXsubW"],"strokeSharpness":"round","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GZbAXxKnLefTL2_PFb4xy"},"fontSize":16,"fontFamily":2,"text":"Device","baseline":16,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"Device"},{"type":"line","version":166,"versionNonce":183698706,"isDeleted":true,"id":"XoXx3D3wW5XiWPsl4QhxE","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":289,"y":-44,"strokeColor":"#00000000","backgroundColor":"#00000000","width":24,"height":24,"seed":256444833,"groupIds":["QEqo_gwTrA3-V6ydHHo8Y","AYv0wsur7fEYqlhjXsubW"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GZbAXxKnLefTL2_PFb4xy"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[24,0],[24,24],[0,24],[0,0]]},{"type":"line","version":166,"versionNonce":360254734,"isDeleted":true,"id":"ptOdQewgnuJSoCC1clAJO","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":293,"y":-38,"strokeColor":"#00000000","backgroundColor":"#000","width":22,"height":16,"seed":752786671,"groupIds":["CZm-QNXBD8d0En35hLhF3","AYv0wsur7fEYqlhjXsubW"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GZbAXxKnLefTL2_PFb4xy"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[18,0],[18,-2],[0,-2],[0,-2],[-0.7765624523162842,-1.8421874046325684],[-1.4124999046325684,-1.4124999046325684],[-1.8421874046325684,-0.7765626907348633],[-2,0],[-2,11],[-4,11],[-4,14],[10,14],[10,11],[0,11],[0,0],[0,0]]},{"type":"line","version":166,"versionNonce":1681167058,"isDeleted":true,"id":"NT-NqKGTJBsGwibyEy7Ql","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":312,"y":-36,"strokeColor":"#00000000","backgroundColor":"#000","width":8,"height":12,"seed":194588033,"groupIds":["fyU8-sdx7-c6xfZW8EBDS","AYv0wsur7fEYqlhjXsubW"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GZbAXxKnLefTL2_PFb4xy"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-6,0],[-6,0],[-6.706249237060547,0.2937498092651367],[-7,1],[-7,11],[-7,11],[-6.706249237060547,11.706249237060547],[-6,12],[0,12],[0,12],[0.7062492370605469,11.706249237060547],[1,11],[1,1],[1,1],[0.7062492370605469,0.2937498092651367],[0,0],[0,0]]},{"type":"line","version":166,"versionNonce":355482446,"isDeleted":true,"id":"AkJ-v9WWRpMGCuf_JSIz4","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":311,"y":-27,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":4,"height":7,"seed":2012948239,"groupIds":["vrqri4vUUNiHiWzwJSJxk","AYv0wsur7fEYqlhjXsubW"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GZbAXxKnLefTL2_PFb4xy"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-4,0],[-4,-7],[0,-7],[0,0]]},{"type":"rectangle","version":182,"versionNonce":1098803346,"isDeleted":true,"id":"Xm7gToxpr-sVr11kMHVM4","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":140,"y":-60,"strokeColor":"#202124","backgroundColor":"#FFF","width":102,"height":82,"seed":1979307361,"groupIds":["rQeV_g3OWSj1SHD41qU1D"],"strokeSharpness":"round","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"ksfDfvDIIVSAO6pAVNPDH"}},{"type":"text","version":182,"versionNonce":1785176462,"isDeleted":true,"id":"cIuXwKzygEx4l3DSWFSAW","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":156,"y":-12,"strokeColor":"#202124","backgroundColor":"transparent","width":70,"height":18,"seed":1598123311,"groupIds":["rQeV_g3OWSj1SHD41qU1D"],"strokeSharpness":"round","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"ksfDfvDIIVSAO6pAVNPDH"},"fontSize":16,"fontFamily":2,"text":"Smartphone","baseline":16,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"Smartphone"},{"type":"line","version":182,"versionNonce":176653906,"isDeleted":true,"id":"JEZ2zhXk1X9Ri2C1PkDaD","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":179,"y":-44,"strokeColor":"#00000000","backgroundColor":"#00000000","width":24,"height":24,"seed":1102741825,"groupIds":["8B999aCWu1gA7cfQVCLTU","rQeV_g3OWSj1SHD41qU1D"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"ksfDfvDIIVSAO6pAVNPDH"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[24,0],[24,24],[0,24],[0,0]]},{"type":"line","version":182,"versionNonce":1750613966,"isDeleted":true,"id":"rOgNvBrY1dgHN3QvMloKB","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":196,"y":-42.99000000953674,"strokeColor":"#00000000","backgroundColor":"#000","width":14,"height":22,"seed":773451599,"groupIds":["Egcas7g2wzLiiDDJALbrC","rQeV_g3OWSj1SHD41qU1D"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"ksfDfvDIIVSAO6pAVNPDH"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-10,-0.009999990463256836],[-10,-0.009999990463256836],[-10.776562690734863,0.14781248569488525],[-11.412499904632568,0.5774999856948853],[-11.842187404632568,1.213437557220459],[-12,1.9900000095367432],[-12,19.990000009536743],[-12,19.990000009536743],[-11.842187404632568,20.76656174659729],[-11.412499904632568,21.40250039100647],[-10.776562690734863,21.83218789100647],[-10,21.990000009536743],[0,21.990000009536743],[0,21.990000009536743],[0.7765617370605469,21.83218789100647],[1.4125003814697266,21.40250039100647],[1.8421878814697266,20.76656174659729],[2,19.990000009536743],[2,1.9900000095367432],[2,1.9900000095367432],[1.8421878814697266,1.2149999141693115],[1.4125003814697266,0.5824999809265137],[0.7765617370605469,0.15625],[0,0],[0,0]]},{"type":"line","version":182,"versionNonce":405203986,"isDeleted":true,"id":"dulO0U0TqP5glSmxyckdR","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":196,"y":-25,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":10,"height":14,"seed":1278914849,"groupIds":["aBRY9H2ZzFj4G_23qtGHG","rQeV_g3OWSj1SHD41qU1D"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"ksfDfvDIIVSAO6pAVNPDH"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-10,0],[-10,-14],[0,-14],[0,0]]},{"type":"rectangle","version":122,"versionNonce":320542222,"isDeleted":true,"id":"byvCKjxxAty1f_CZXJuMy","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":620,"y":-60,"strokeColor":"#202124","backgroundColor":"#FFF","width":82,"height":82,"seed":786247023,"groupIds":["qsyu7MtD9a5m5jeFTiFdw"],"strokeSharpness":"round","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"}},{"type":"text","version":122,"versionNonce":273914322,"isDeleted":true,"id":"i4AwcWIUW3TXCC3rZZt3p","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":636,"y":-12,"strokeColor":"#202124","backgroundColor":"transparent","width":50,"height":18,"seed":451536129,"groupIds":["qsyu7MtD9a5m5jeFTiFdw"],"strokeSharpness":"round","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"fontSize":16,"fontFamily":2,"text":"Cloud","baseline":16,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"Cloud"},{"type":"line","version":122,"versionNonce":61416526,"isDeleted":true,"id":"0_kmf_IlAE3siPbBQb6HG","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":649,"y":-44,"strokeColor":"#00000000","backgroundColor":"#00000000","width":24,"height":24,"seed":1288939407,"groupIds":["RA4yD3gjppwfLfztnQB9j","qsyu7MtD9a5m5jeFTiFdw"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[24,0],[24,24],[0,24],[0,0]]},{"type":"line","version":122,"versionNonce":1109692306,"isDeleted":true,"id":"EaLQgzk8PlTKjqkP-_dy1","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":668.3500003814697,"y":-33.96000003814697,"strokeColor":"#00000000","backgroundColor":"#000","width":24,"height":16,"seed":1497865441,"groupIds":["VPXYg6IZraSE6-jP90a6O","qsyu7MtD9a5m5jeFTiFdw"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.3617572784423828,-1.2500581741333008],[-0.9234371185302734,-2.3992185592651367],[-1.6646480560302734,-3.4272069931030273],[-2.565000534057617,-4.31374979019165],[-3.60410213470459,-5.03857421875],[-4.761563301086426,-5.581406116485596],[-6.016992568969727,-5.921972751617432],[-7.350000381469727,-6.039999961853027],[-9.432500839233398,-5.746250152587891],[-11.289999961853027,-4.920000076293945],[-12.84000015258789,-3.6437501907348633],[-14.000000476837158,-2],[-15.094082355499268,-1.7787694931030273],[-16.10578155517578,-1.368281364440918],[-17.015527725219727,-0.7883396148681641],[-17.80375039577484,-0.058750152587890625],[-18.450879275798798,0.8006839752197266],[-18.937344133853912,1.770155906677246],[-19.24357459694147,2.8298635482788086],[-19.350000381469727,3.9600000381469727],[-19.22794959694147,5.168144226074219],[-18.87796914577484,6.293906211853027],[-18.32431674003601,7.313027381896973],[-17.5912504196167,8.201249122619629],[-16.703027725219727,8.93431568145752],[-15.683906555175781,9.487969398498535],[-14.55814504623413,9.8379487991333],[-13.350000381469727,9.960000038146973],[-0.35000038146972656,9.960000038146973],[-0.35000038146972656,9.960000038146973],[0.6572647094726562,9.858359336853027],[1.5956249237060547,9.566874504089355],[2.4449214935302734,9.10570240020752],[3.184999465942383,8.494999885559082],[3.7957019805908203,7.754921913146973],[4.256874084472656,6.905625343322754],[4.548358917236328,5.9672651290893555],[4.649999618530273,4.960000038146973],[4.2890625,3.096562385559082],[3.299999237060547,1.557499885559082],[1.8234367370605469,0.4796876907348633],[0,0],[0,0]]},{"type":"line","version":122,"versionNonce":1272670862,"isDeleted":true,"id":"o84xlrlSa8of6cUbVxl5k","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":668,"y":-26,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":20,"height":12,"seed":1983241647,"groupIds":["Xx9ZNke2qHoENg1oIcJ5D","qsyu7MtD9a5m5jeFTiFdw"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-13,0],[-13,0],[-14.55734395980835,-0.31421852111816406],[-15.828749895095825,-1.1712493896484375],[-16.685781240463257,-2.4426565170288086],[-17,-4],[-16.685781240463257,-5.557343482971191],[-15.828749895095825,-6.828749656677246],[-14.55734395980835,-7.685781478881836],[-13,-8],[-12.289999961853027,-8],[-12.289999961853027,-8],[-11.539374828338623,-9.599531173706055],[-10.342499732971191,-10.866250038146973],[-8.796875,-11.699843883514404],[-7,-12],[-5.890859603881836,-11.888359546661377],[-4.858124732971191,-11.568124771118164],[-3.923828125,-11.061327934265137],[-3.109999656677246,-10.389999866485596],[-2.438671112060547,-9.576171875],[-1.931875228881836,-8.641875267028809],[-1.6116409301757812,-7.609140396118164],[-1.5,-6.5],[-1.5,-6],[0,-6],[0,-6],[1.1690616607666016,-5.764687538146973],[2.122499465942383,-5.122500419616699],[2.7646865844726562,-4.169062614440918],[3,-3],[2.7646865844726562,-1.8309383392333984],[2.122499465942383,-0.8775005340576172],[1.1690616607666016,-0.23531341552734375],[0,0],[0,0]]},{"type":"rectangle","version":124,"versionNonce":30461266,"isDeleted":true,"id":"SoBS8Cr_TmMR_SYRMqFR5","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":740,"y":-60,"strokeColor":"#202124","backgroundColor":"#FFF","width":109,"height":82,"seed":383998145,"groupIds":["Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"round","boundElements":[{"id":"oeXAa8J4xvSm11RODwd77","type":"arrow"}],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"}},{"type":"text","version":136,"versionNonce":1516955854,"isDeleted":true,"id":"-YYU90TuMypu6oINlESLH","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":747.5,"y":-12,"strokeColor":"#202124","backgroundColor":"transparent","width":94,"height":19,"seed":1043091407,"groupIds":["Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"round","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"fontSize":16,"fontFamily":2,"text":"On-Premises","baseline":15,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"On-Premises"},{"type":"line","version":122,"versionNonce":78598930,"isDeleted":true,"id":"f9RKzSCBcckRDZFiQm3nz","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":782.5,"y":-44,"strokeColor":"#00000000","backgroundColor":"#00000000","width":24,"height":24,"seed":1163696289,"groupIds":["vhehBs-6eZAAW8QZm4RNB","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[24,0],[24,24],[0,24],[0,0]]},{"type":"line","version":122,"versionNonce":1592827662,"isDeleted":true,"id":"XP7PHm854gGRDhP6d-sl_","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":794.5,"y":-37,"strokeColor":"#00000000","backgroundColor":"#000","width":20,"height":18,"seed":1053785583,"groupIds":["9-G26wZQWCx0gX6JdF49S","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,-4],[-10,-4],[-10,14],[10,14],[10,0],[0,0]]},{"type":"line","version":122,"versionNonce":1027023058,"isDeleted":true,"id":"4WNkpeeiw8tmX8Gv1LRO_","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":788.5,"y":-25,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":2,"height":2,"seed":1986190465,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,-2],[0,-2],[0,0]]},{"type":"line","version":122,"versionNonce":770018638,"isDeleted":true,"id":"7ruYDoI_fovS_QE9cb7iF","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":788.5,"y":-29,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":2,"height":2,"seed":992471055,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,-2],[0,-2],[0,0]]},{"type":"line","version":122,"versionNonce":922695314,"isDeleted":true,"id":"8UjOZluHYSF1Qfddzeznd","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":788.5,"y":-33,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":2,"height":2,"seed":1505076321,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,-2],[0,-2],[0,0]]},{"type":"line","version":122,"versionNonce":614642574,"isDeleted":true,"id":"K1C4qeBqz-4FxqDcBLWm4","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":788.5,"y":-37,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":2,"height":2,"seed":19795503,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,-2],[0,-2],[0,0]]},{"type":"line","version":122,"versionNonce":1925092434,"isDeleted":true,"id":"7hGTdHrNk14cB9HYG3QHR","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":792.5,"y":-25,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":2,"height":2,"seed":2065985601,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,-2],[0,-2],[0,0]]},{"type":"line","version":122,"versionNonce":224465358,"isDeleted":true,"id":"VCaHhW2LYWP0VXWs-rolH","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":792.5,"y":-29,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":2,"height":2,"seed":197816399,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,-2],[0,-2],[0,0]]},{"type":"line","version":122,"versionNonce":1112291858,"isDeleted":true,"id":"9ZClsnKA-4hZ5CQfbG02n","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":792.5,"y":-33,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":2,"height":2,"seed":1083097121,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,-2],[0,-2],[0,0]]},{"type":"line","version":122,"versionNonce":54110222,"isDeleted":true,"id":"-0r8kSCpT8RoA4jygqHce","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":792.5,"y":-37,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":2,"height":2,"seed":1691717231,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,-2],[0,-2],[0,0]]},{"type":"line","version":122,"versionNonce":614410194,"isDeleted":true,"id":"k73ssyB--pVLNh8n362KZ","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":802.5,"y":-25,"strokeColor":"#00000000","backgroundColor":"#DEDEDE","width":8,"height":10,"seed":669258753,"groupIds":["E8-jgfXzT0OnjMMeNpV79","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-8,0],[-8,-2],[-6,-2],[-6,-4],[-8,-4],[-8,-6],[-6,-6],[-6,-8],[-8,-8],[-8,-10],[0,-10],[0,0]]},{"type":"line","version":122,"versionNonce":1445295694,"isDeleted":true,"id":"AjpdrOL6SDvHftKF0AR9W","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":800.5,"y":-33,"strokeColor":"#00000000","backgroundColor":"#000","width":2,"height":2,"seed":1192749199,"groupIds":["ve0oKS5tqVeFQ29waG9z_","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,2],[0,2],[0,0]]},{"type":"line","version":122,"versionNonce":567172498,"isDeleted":true,"id":"KutwLAggp0K8lhJUL8tOY","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":800.5,"y":-29,"strokeColor":"#00000000","backgroundColor":"#000","width":2,"height":2,"seed":1159982049,"groupIds":["ve0oKS5tqVeFQ29waG9z_","Qc--kXmmttTCboUtyd-hL"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"CzZ9F4q79qwKQ2iL3t3Sw"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,2],[0,2],[0,0]]},{"type":"rectangle","version":160,"versionNonce":1862106254,"isDeleted":true,"id":"qSr1VhlJ9kDLU0Wu5DDyA","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":120,"y":200,"strokeColor":"#202124","backgroundColor":"#FFF","width":240,"height":60,"seed":4849327,"groupIds":["kvo-YFp39a3f2qxF2qRAn","99c2RTyACu1auxe7YAEW7"],"strokeSharpness":"round","boundElements":[{"id":"5NHi5KE_nu-zXqdTwd3J_","type":"arrow"},{"id":"N3M63cNjcTvZhPHB36J_k","type":"arrow"}],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"BmLdO74YV04wW-ZaLwn-t","label":"Cloud Run","resource":"google_cloud_run_service","type":"container"}},{"type":"text","version":155,"versionNonce":655416146,"isDeleted":true,"id":"uLD9bucbaaLwNLwcmkNi9","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":136,"y":216,"strokeColor":"#1A73F8","backgroundColor":"transparent","width":160,"height":18,"seed":6145985,"groupIds":["kvo-YFp39a3f2qxF2qRAn","99c2RTyACu1auxe7YAEW7"],"strokeSharpness":"round","boundElements":[{"id":"5NHi5KE_nu-zXqdTwd3J_","type":"arrow"}],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"BmLdO74YV04wW-ZaLwn-t","label":"Cloud Run","resource":"google_cloud_run_service","type":"child"},"fontSize":16,"fontFamily":2,"text":"Cloud Run","baseline":16,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Cloud Run"},{"type":"line","version":154,"versionNonce":863681230,"isDeleted":true,"id":"Upi9t59zAXCVJgZpvFFAF","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":328.90666675567627,"y":218.6266667842865,"strokeColor":"transparent","backgroundColor":"#aecbfa","width":12.466668128967285,"height":9.373333215713501,"seed":320098511,"groupIds":["kvo-YFp39a3f2qxF2qRAn","99c2RTyACu1auxe7YAEW7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"BmLdO74YV04wW-ZaLwn-t","label":"Cloud Run","resource":"google_cloud_run_service","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[3.1133337020874023,9.373333215713501],[12.466668128967285,9.373333215713501],[0,0],[0,0]]},{"type":"line","version":154,"versionNonce":1656594706,"isDeleted":true,"id":"dDipeLK-2vH_BX6HOlQrE","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":341.37333488464355,"y":228,"strokeColor":"transparent","backgroundColor":"#4285f4","width":12.466668128967285,"height":9.373334884643555,"seed":330377121,"groupIds":["kvo-YFp39a3f2qxF2qRAn","99c2RTyACu1auxe7YAEW7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"BmLdO74YV04wW-ZaLwn-t","label":"Cloud Run","resource":"google_cloud_run_service","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-9.353334426879883,0],[-12.466668128967285,9.373334884643555],[0,0],[0,0]]},{"type":"line","version":154,"versionNonce":1781936398,"isDeleted":true,"id":"M-fclitvDquwg89F_bCCo","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":323.44000005722046,"y":237.37333488464355,"strokeColor":"transparent","backgroundColor":"#4285f4","width":5.4666666984558105,"height":9.373334884643555,"seed":420437743,"groupIds":["kvo-YFp39a3f2qxF2qRAn","99c2RTyACu1auxe7YAEW7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"BmLdO74YV04wW-ZaLwn-t","label":"Cloud Run","resource":"google_cloud_run_service","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[3.126667022705078,-1.5600013732910156],[5.4666666984558105,-9.373334884643555],[2.3400001525878906,-9.373334884643555],[0,0],[0,0]]},{"type":"line","version":154,"versionNonce":541830866,"isDeleted":true,"id":"JnUQVgBTw67kOouHX77FB","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":323.44000005722046,"y":218.6266667842865,"strokeColor":"transparent","backgroundColor":"#aecbfa","width":5.4666666984558105,"height":9.373333215713501,"seed":1229818753,"groupIds":["kvo-YFp39a3f2qxF2qRAn","99c2RTyACu1auxe7YAEW7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"BmLdO74YV04wW-ZaLwn-t","label":"Cloud Run","resource":"google_cloud_run_service","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[2.3400001525878906,9.373333215713501],[5.4666666984558105,9.373333215713501],[3.126667022705078,1.5600001811981201],[0,0],[0,0]]},{"type":"rectangle","version":141,"versionNonce":514383694,"isDeleted":true,"id":"npx8Hz75hgm3swD6_2iyY","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":120,"y":320,"strokeColor":"#202124","backgroundColor":"#FFF","width":240,"height":60,"seed":1690544399,"groupIds":["4KcMZfDg7XA7JXBlV6j7B","kdkeQgqkGrfZXLwKw2Uhe"],"strokeSharpness":"round","boundElements":[{"id":"N3M63cNjcTvZhPHB36J_k","type":"arrow"}],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GirKlt7Zo5ODVe-S2b3sz","label":"Cloud Logging","type":"container"}},{"type":"text","version":136,"versionNonce":609354898,"isDeleted":true,"id":"Yn_yBP7W7hT9OU-eZWLT1","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":136,"y":336,"strokeColor":"#1A73F8","backgroundColor":"transparent","width":160,"height":18,"seed":2037543777,"groupIds":["4KcMZfDg7XA7JXBlV6j7B","kdkeQgqkGrfZXLwKw2Uhe"],"strokeSharpness":"round","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GirKlt7Zo5ODVe-S2b3sz","label":"Cloud Logging","type":"child"},"fontSize":16,"fontFamily":2,"text":"Cloud Logging","baseline":16,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Cloud Logging"},{"type":"line","version":136,"versionNonce":86754702,"isDeleted":true,"id":"obw8Pi0-DPdzn1NgbmCtO","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":329.85806465148926,"y":349.35914039611816,"strokeColor":"#00000000","backgroundColor":"#4285f4","width":6.4645161628723145,"height":15.083869934082031,"seed":1672064815,"groupIds":["Ii9EPx28h_2Ltznm9_g0T","4KcMZfDg7XA7JXBlV6j7B","kdkeQgqkGrfZXLwKw2Uhe"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GirKlt7Zo5ODVe-S2b3sz","label":"Cloud Logging","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,-2.154839515686035],[-4.309677600860596,-2.154839515686035],[-4.309677600860596,-7.539785385131836],[-6.4645161628723145,-7.539785385131836],[-6.4645161628723145,7.544084548950195],[0,7.544084548950195],[0,5.389245986938477],[-4.309677600860596,5.389245986938477],[-4.309677600860596,0],[0,0]]},{"type":"line","version":136,"versionNonce":143106642,"isDeleted":true,"id":"roVzUmE4QUgv__jXKAUDE","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":328.7784948348999,"y":342.8946237564087,"strokeColor":"#00000000","backgroundColor":"#669df6","width":14.004302024841309,"height":4.3053765296936035,"seed":1215258433,"groupIds":["y1d7xwHyjE-wliVKC9fCt","4KcMZfDg7XA7JXBlV6j7B","kdkeQgqkGrfZXLwKw2Uhe"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GirKlt7Zo5ODVe-S2b3sz","label":"Cloud Logging","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[14.004302024841309,0],[14.004302024841309,-4.3053765296936035],[0,-4.3053765296936035],[0,0]]},{"type":"line","version":136,"versionNonce":1593304014,"isDeleted":true,"id":"zeyftvOIg5-jMFJNT8R1n","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":328.7784948348999,"y":350.4387102127075,"strokeColor":"#00000000","backgroundColor":"#669df6","width":14.004302024841309,"height":4.309678077697754,"seed":1076490575,"groupIds":["y1d7xwHyjE-wliVKC9fCt","4KcMZfDg7XA7JXBlV6j7B","kdkeQgqkGrfZXLwKw2Uhe"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GirKlt7Zo5ODVe-S2b3sz","label":"Cloud Logging","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[14.004302024841309,0],[14.004302024841309,-4.309678077697754],[0,-4.309678077697754],[0,0]]},{"type":"line","version":136,"versionNonce":398690322,"isDeleted":true,"id":"WLZfwEGcl4O_fuH5GgVhR","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":328.7784948348999,"y":357.97849464416504,"strokeColor":"#00000000","backgroundColor":"#669df6","width":14.004302024841309,"height":4.3096771240234375,"seed":614715169,"groupIds":["y1d7xwHyjE-wliVKC9fCt","4KcMZfDg7XA7JXBlV6j7B","kdkeQgqkGrfZXLwKw2Uhe"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GirKlt7Zo5ODVe-S2b3sz","label":"Cloud Logging","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[14.004302024841309,0],[14.004302024841309,-4.3096771240234375],[0,-4.3096771240234375],[0,0]]},{"type":"line","version":136,"versionNonce":1579563534,"isDeleted":true,"id":"5FvriNfwi-1VwsyQcmJkR","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":321.23870968818665,"y":343.9741930961609,"strokeColor":"#00000000","backgroundColor":"#aecbfa","width":6.4645164012908936,"height":6.464515686035156,"seed":1134358383,"groupIds":["HTBdtz_iv6ftotiAP86yr","4KcMZfDg7XA7JXBlV6j7B","kdkeQgqkGrfZXLwKw2Uhe"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829077,"link":null,"locked":false,"customData":{"boxId":"GirKlt7Zo5ODVe-S2b3sz","label":"Cloud Logging","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[6.4645164012908936,0],[6.4645164012908936,-6.464515686035156],[0,-6.464515686035156],[0,0]]},{"type":"rectangle","version":192,"versionNonce":704427474,"isDeleted":true,"id":"jKFQ6AEoQ5G3FvmeJjBI1","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":440,"y":300,"strokeColor":"#202124","backgroundColor":"#FFF","width":240,"height":80,"seed":75449089,"groupIds":["t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"container"}},{"type":"text","version":210,"versionNonce":162515022,"isDeleted":true,"id":"6Gdn1-ng_LCJrHZIbTqmO","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":456,"y":316,"strokeColor":"#1A73F8","backgroundColor":"transparent","width":118,"height":37,"seed":2018191759,"groupIds":["t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"fontSize":16,"fontFamily":2,"text":"BigQuery Data \nTransfer Service","baseline":34,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"BigQuery Data \nTransfer Service"},{"type":"line","version":186,"versionNonce":4860818,"isDeleted":true,"id":"C16nNj6hnqQBox7nKvHRt","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":658.421215057373,"y":332.79999923706055,"strokeColor":"transparent","backgroundColor":"#4285f4","width":6.175506591796875,"height":6.175506591796875,"seed":1686190817,"groupIds":["t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-1.508890151977539,1.5088920593261719],[-1.508890151977539,1.5088920593261719],[-1.5668010711669922,1.5783119201660156],[-1.6085205078125,1.6556739807128906],[-1.6340065002441406,1.7383899688720703],[-1.6432132720947266,1.8238697052001953],[-1.6360969543457031,1.9095230102539062],[-1.6126155853271484,1.9927654266357422],[-1.5727252960205078,2.071004867553711],[-1.5163803100585938,2.141653060913086],[-1.508890151977539,2.149141311645508],[2.253978729248047,5.912012100219727],[2.253978729248047,5.912012100219727],[2.3232383728027344,5.968524932861328],[2.400175094604492,6.008892059326172],[2.4822921752929688,6.033111572265625],[2.5670833587646484,6.04118537902832],[2.6520519256591797,6.033111572265625],[2.7346935272216797,6.008892059326172],[2.8125076293945312,5.968524932861328],[2.88299560546875,5.912012100219727],[4.403120040893555,4.391887664794922],[4.403120040893555,4.391887664794922],[4.459634780883789,4.322628021240234],[4.5,4.245691299438477],[4.524219512939453,4.16357421875],[4.532293319702148,4.07878303527832],[4.524219512939453,3.993816375732422],[4.5,3.911174774169922],[4.459634780883789,3.8333587646484375],[4.403120040893555,3.7628707885742188],[0.6365070343017578,0],[0.6365070343017578,0],[0.5670852661132812,-0.057910919189453125],[0.48972320556640625,-0.09963035583496094],[0.4070091247558594,-0.12511444091796875],[0.3215293884277344,-0.1343212127685547],[0.23587417602539062,-0.12720489501953125],[0.1526336669921875,-0.10372543334960938],[0.07439422607421875,-0.06383323669433594],[0.00374603271484375,-0.007488250732421875],[0,0]]},{"type":"line","version":186,"versionNonce":560828046,"isDeleted":true,"id":"xTkpgHgrFLJKDkIak8Ujw","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":651.2549142837524,"y":317.5725427865982,"strokeColor":"transparent","backgroundColor":"#669df6","width":19.140093445777893,"height":19.140092253684998,"seed":191700911,"groupIds":["t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.49259281158447266,0.012448668479919434],[-0.9787044525146484,0.04939424991607666],[-1.4577360153198242,0.1102362871170044],[-1.9290857315063477,0.19437408447265625],[-2.392153739929199,0.3012070655822754],[-2.8463401794433594,0.430134654045105],[-3.291043758392334,0.5805565118789673],[-3.725663661956787,0.7518719434738159],[-4.149599075317383,0.943480372428894],[-4.562250137329102,1.1547812223434448],[-4.963016510009766,1.3851739168167114],[-5.351297378540039,1.6340581178665161],[-5.726491451263428,1.900833010673523],[-6.087998867034912,2.184897780418396],[-6.435218811035156,2.4856523275375366],[-6.767550945281982,2.802495837211609],[-7.084394454956055,3.134827971458435],[-7.385149240493774,3.4820483922958374],[-7.6692140102386475,3.8435558080673218],[-7.935988903045654,4.2187498807907104],[-8.184873104095459,4.607030749320984],[-8.415265798568726,5.00779664516449],[-8.626566410064697,5.4204477071762085],[-8.818174839019775,5.844383597373962],[-8.989490509033203,6.2790035009384155],[-9.139912366867065,6.723706603050232],[-9.268839955329895,7.177893042564392],[-9.375672936439514,7.640961050987244],[-9.459810733795166,8.112310767173767],[-9.520652770996094,8.591342329978943],[-9.557598352432251,9.077454924583435],[-9.57004702091217,9.570046782493591],[-9.557598352432251,10.062638640403748],[-9.520652770996094,10.548750281333923],[-9.459810733795166,11.0277818441391],[-9.375672936439514,11.499131560325623],[-9.268839955329895,11.96220052242279],[-9.139912366867065,12.416386008262634],[-8.989490509033203,12.861090064048767],[-8.818174839019775,13.29570996761322],[-8.626566410064697,13.719644904136658],[-8.415265798568726,14.132296919822693],[-8.184873104095459,14.533063292503357],[-7.935988903045654,14.92134416103363],[-7.6692140102386475,15.296536803245544],[-7.385149240493774,15.658044219017029],[-7.084394454956055,16.005265593528748],[-6.767550945281982,16.3375962972641],[-6.435218811035156,16.654441237449646],[-6.087998867034912,16.955195784568787],[-5.726491451263428,17.239259123802185],[-5.351297378540039,17.50603425502777],[-4.963016510009766,17.754918456077576],[-4.562250137329102,17.985310912132263],[-4.149599075317383,18.19661271572113],[-3.725663661956787,18.38822114467621],[-3.291043758392334,18.55953538417816],[-2.8463401794433594,18.709956526756287],[-2.392153739929199,18.83888566493988],[-1.9290857315063477,18.945720076560974],[-1.4577360153198242,19.0298570394516],[-0.9787044525146484,19.090697646141052],[-0.49259281158447266,19.12764298915863],[0,19.140092253684998],[0.49259185791015625,19.12764298915863],[0.978703498840332,19.090697646141052],[1.4577350616455078,19.0298570394516],[1.9290847778320312,18.945720076560974],[2.392153739929199,18.83888566493988],[2.846339225769043,18.709956526756287],[3.291043281555176,18.55953538417816],[3.7256622314453125,18.38822114467621],[4.149598121643066,18.19661271572113],[4.562249183654785,17.985310912132263],[4.963015556335449,17.754918456077576],[5.351296424865723,17.50603425502777],[5.7264909744262695,17.239259123802185],[6.087996482849121,16.955195784568787],[6.43521785736084,16.654441237449646],[6.767550468444824,16.3375962972641],[7.084393501281738,16.005265593528748],[7.385148048400879,15.658044219017029],[7.66921329498291,15.296536803245544],[7.935986518859863,14.92134416103363],[8.184870719909668,14.533063292503357],[8.415265083312988,14.132296919822693],[8.626564979553223,13.719644904136658],[8.818175315856934,13.29570996761322],[8.989487648010254,12.861090064048767],[9.139910697937012,12.416386008262634],[9.268839836120605,11.96220052242279],[9.375672340393066,11.499131560325623],[9.459811210632324,11.0277818441391],[9.520649909973145,10.548750281333923],[9.557595252990723,10.062638640403748],[9.570046424865723,9.570046782493591],[9.557587623596191,9.077454924583435],[9.520609855651855,8.591342329978943],[9.45971965789795,8.112310767173767],[9.375519752502441,7.640961050987244],[9.268609046936035,7.177893042564392],[9.1395902633667,6.723706603050232],[8.989069938659668,6.2790035009384155],[8.817646980285645,5.844383597373962],[8.62592601776123,5.4204477071762085],[8.414509773254395,5.00779664516449],[8.184000968933105,4.607030749320984],[7.935000419616699,4.2187498807907104],[7.668112754821777,3.8435558080673218],[7.383938789367676,3.4820483922958374],[7.083081245422363,3.134827971458435],[6.766144752502441,2.802495837211609],[6.433732032775879,2.4856523275375366],[6.086441993713379,2.184897780418396],[5.724881172180176,1.900833010673523],[5.3496503829956055,1.6340581178665161],[4.961352348327637,1.3851739168167114],[4.560590744018555,1.1547812223434448],[4.147966384887695,0.943480372428894],[3.7240819931030273,0.7518719434738159],[3.2895421981811523,0.5805565118789673],[2.8449487686157227,0.430134654045105],[2.3909034729003906,0.3012070655822754],[1.928009033203125,0.19437408447265625],[1.4568700790405273,0.1102362871170044],[0.9780864715576172,0.04939424991607666],[0.4922628402709961,0.012448668479919434],[0,0]]},{"type":"line","version":186,"versionNonce":551741778,"isDeleted":true,"id":"R8Nu8_bMJEvE8mMgtaKWR","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":651.2549142837524,"y":334.25647354125977,"strokeColor":"transparent","backgroundColor":"#669df6","width":14.205303192138672,"height":14.20530366897583,"seed":87635649,"groupIds":["t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.36559581756591797,-0.009929656982421875],[-0.7263565063476562,-0.03801727294921875],[-1.081838607788086,-0.08381843566894531],[-1.4315967559814453,-0.14688491821289062],[-1.7751836776733398,-0.22677230834960938],[-2.112156867980957,-0.32303619384765625],[-2.4420671463012695,-0.4352302551269531],[-2.764470100402832,-0.5629100799560547],[-3.078920364379883,-0.70562744140625],[-3.3849730491638184,-0.8629360198974609],[-3.6821823120117188,-1.0343952178955078],[-3.9701008796691895,-1.2195549011230469],[-4.248284816741943,-1.4179706573486328],[-4.516287803649902,-1.6291980743408203],[-4.773664474487305,-1.8527889251708984],[-5.019969463348389,-2.088298797607422],[-5.254756450653076,-2.3352842330932617],[-5.4775800704956055,-2.5932979583740234],[-5.687994480133057,-2.8618927001953125],[-5.885554790496826,-3.140625],[-6.069815635681152,-3.429048538208008],[-6.240329742431641,-3.726717948913574],[-6.396652698516846,-4.0331878662109375],[-6.538338661193848,-4.348011016845703],[-6.664942264556885,-4.670742988586426],[-6.776017189025879,-5.000938415527344],[-6.871118545532227,-5.338151931762695],[-6.949800491333008,-5.681938171386719],[-7.0116167068481445,-6.031848907470703],[-7.056122779846191,-6.3874406814575195],[-7.08287239074707,-6.74826717376709],[-7.0914201736450195,-7.113883972167969],[-7.081490516662598,-7.47947883605957],[-7.053402900695801,-7.840239524841309],[-7.007602214813232,-8.195722579956055],[-6.944535255432129,-8.545480728149414],[-6.864646911621094,-8.889067649841309],[-6.768383026123047,-9.22603988647461],[-6.65618896484375,-9.555950164794922],[-6.528510570526123,-9.8783540725708],[-6.385793209075928,-10.192804336547852],[-6.228483200073242,-10.498857021331787],[-6.057024955749512,-10.79606580734253],[-5.871865749359131,-11.083984851837158],[-5.673449516296387,-11.362168312072754],[-5.462223052978516,-11.630171298980713],[-5.238631725311279,-11.887547969818115],[-5.003120422363281,-12.1338529586792],[-4.756135940551758,-12.368639945983887],[-4.498122692108154,-12.591463565826416],[-4.229527473449707,-12.801878452301025],[-3.9507951736450195,-12.999438762664795],[-3.6623711585998535,-13.183699131011963],[-3.3647022247314453,-13.35421371459961],[-3.0582332611083984,-13.510536670684814],[-2.7434091567993164,-13.652222633361816],[-2.4206771850585938,-13.778826236724854],[-2.0904808044433594,-13.889901161193848],[-1.7532682418823242,-13.985002517700195],[-1.4094829559326172,-14.063683986663818],[-1.0595712661743164,-14.125500679016113],[-0.7039785385131836,-14.17000675201416],[-0.3431520462036133,-14.196756362915039],[0.022464752197265625,-14.20530366897583],[0.3870382308959961,-14.195406913757324],[0.7468461990356445,-14.167415142059326],[1.1014394760131836,-14.121772766113281],[1.4503746032714844,-14.058923244476318],[1.7932062149047852,-13.979310512542725],[2.129486083984375,-13.883377075195312],[2.4587717056274414,-13.771567344665527],[2.78061580657959,-13.644324779510498],[3.094572067260742,-13.502092361450195],[3.400197982788086,-13.345314979553223],[3.6970434188842773,-13.174434185028076],[3.9846668243408203,-12.989895343780518],[4.262619972229004,-12.792141437530518],[4.530458450317383,-12.581615924835205],[4.787737846374512,-12.358762741088867],[5.0340070724487305,-12.124024391174316],[5.268828392028809,-11.877845287322998],[5.491751670837402,-11.6206693649292],[5.702330589294434,-11.35293960571289],[5.900120735168457,-11.075099468231201],[6.084677696228027,-10.787592887878418],[6.255553245544434,-10.490862846374512],[6.412304878234863,-10.185354232788086],[6.5544843673706055,-9.871508598327637],[6.681647300720215,-9.549772262573242],[6.793347358703613,-9.220584869384766],[6.8891401290893555,-8.884393692016602],[6.968579292297363,-8.541641235351562],[7.031216621398926,-8.192770004272461],[7.076613426208496,-7.838224411010742],[7.104315757751465,-7.478448867797852],[7.113883018493652,-7.113883972167969],[7.1053361892700195,-6.74826717376709],[7.078587532043457,-6.3874406814575195],[7.03408145904541,-6.031848907470703],[6.972264289855957,-5.681938171386719],[6.893582344055176,-5.338151931762695],[6.798480033874512,-5.000938415527344],[6.687405586242676,-4.670742988586426],[6.560803413391113,-4.348011016845703],[6.419116020202637,-4.0331878662109375],[6.26279354095459,-3.726717948913574],[6.092278480529785,-3.429048538208008],[5.908019065856934,-3.140625],[5.710457801818848,-2.8618927001953125],[5.500042915344238,-2.5932979583740234],[5.277220726013184,-2.3352842330932617],[5.042431831359863,-2.088298797607422],[4.796128273010254,-1.8527889251708984],[4.538751602172852,-1.6291980743408203],[4.270748138427734,-1.4179706573486328],[3.992565155029297,-1.2195549011230469],[3.7046451568603516,-1.0343952178955078],[3.407437324523926,-0.8629360198974609],[3.101384162902832,-0.70562744140625],[2.786932945251465,-0.5629100799560547],[2.4645309448242188,-0.4352302551269531],[2.13461971282959,-0.32303619384765625],[1.7976484298706055,-0.22677230834960938],[1.4540605545043945,-0.14688491821289062],[1.1043024063110352,-0.08381843566894531],[0.7488203048706055,-0.03801727294921875],[0.3880586624145508,-0.009929656982421875],[0.022464752197265625,0],[0,0]]},{"type":"line","version":186,"versionNonce":35163342,"isDeleted":true,"id":"YNy3njIQrlUC1ZhWk3Fk6","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":651.2549142837524,"y":334.25647354125977,"strokeColor":"transparent","backgroundColor":"#fff","width":14.205303192138672,"height":14.20530366897583,"seed":1865109967,"groupIds":["t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.36559581756591797,-0.009929656982421875],[-0.7263565063476562,-0.03801727294921875],[-1.081838607788086,-0.08381843566894531],[-1.4315967559814453,-0.14688491821289062],[-1.7751836776733398,-0.22677230834960938],[-2.112156867980957,-0.32303619384765625],[-2.4420671463012695,-0.4352302551269531],[-2.764470100402832,-0.5629100799560547],[-3.078920364379883,-0.70562744140625],[-3.3849730491638184,-0.8629360198974609],[-3.6821823120117188,-1.0343952178955078],[-3.9701008796691895,-1.2195549011230469],[-4.248284816741943,-1.4179706573486328],[-4.516287803649902,-1.6291980743408203],[-4.773664474487305,-1.8527889251708984],[-5.019969463348389,-2.088298797607422],[-5.254756450653076,-2.3352842330932617],[-5.4775800704956055,-2.5932979583740234],[-5.687994480133057,-2.8618927001953125],[-5.885554790496826,-3.140625],[-6.069815635681152,-3.429048538208008],[-6.240329742431641,-3.726717948913574],[-6.396652698516846,-4.0331878662109375],[-6.538338661193848,-4.348011016845703],[-6.664942264556885,-4.670742988586426],[-6.776017189025879,-5.000938415527344],[-6.871118545532227,-5.338151931762695],[-6.949800491333008,-5.681938171386719],[-7.0116167068481445,-6.031848907470703],[-7.056122779846191,-6.3874406814575195],[-7.08287239074707,-6.74826717376709],[-7.0914201736450195,-7.113883972167969],[-7.081490516662598,-7.47947883605957],[-7.053402900695801,-7.840239524841309],[-7.007602214813232,-8.195722579956055],[-6.944535255432129,-8.545480728149414],[-6.864646911621094,-8.889067649841309],[-6.768383026123047,-9.22603988647461],[-6.65618896484375,-9.555950164794922],[-6.528510570526123,-9.8783540725708],[-6.385793209075928,-10.192804336547852],[-6.228483200073242,-10.498857021331787],[-6.057024955749512,-10.79606580734253],[-5.871865749359131,-11.083984851837158],[-5.673449516296387,-11.362168312072754],[-5.462223052978516,-11.630171298980713],[-5.238631725311279,-11.887547969818115],[-5.003120422363281,-12.1338529586792],[-4.756135940551758,-12.368639945983887],[-4.498122692108154,-12.591463565826416],[-4.229527473449707,-12.801878452301025],[-3.9507951736450195,-12.999438762664795],[-3.6623711585998535,-13.183699131011963],[-3.3647022247314453,-13.35421371459961],[-3.0582332611083984,-13.510536670684814],[-2.7434091567993164,-13.652222633361816],[-2.4206771850585938,-13.778826236724854],[-2.0904808044433594,-13.889901161193848],[-1.7532682418823242,-13.985002517700195],[-1.4094829559326172,-14.063683986663818],[-1.0595712661743164,-14.125500679016113],[-0.7039785385131836,-14.17000675201416],[-0.3431520462036133,-14.196756362915039],[0.022464752197265625,-14.20530366897583],[0.3870382308959961,-14.195406913757324],[0.7468461990356445,-14.167415142059326],[1.1014394760131836,-14.121772766113281],[1.4503746032714844,-14.058923244476318],[1.7932062149047852,-13.979310512542725],[2.129486083984375,-13.883377075195312],[2.4587717056274414,-13.771567344665527],[2.78061580657959,-13.644324779510498],[3.094572067260742,-13.502092361450195],[3.400197982788086,-13.345314979553223],[3.6970434188842773,-13.174434185028076],[3.9846668243408203,-12.989895343780518],[4.262619972229004,-12.792141437530518],[4.530458450317383,-12.581615924835205],[4.787737846374512,-12.358762741088867],[5.0340070724487305,-12.124024391174316],[5.268828392028809,-11.877845287322998],[5.491751670837402,-11.6206693649292],[5.702330589294434,-11.35293960571289],[5.900120735168457,-11.075099468231201],[6.084677696228027,-10.787592887878418],[6.255553245544434,-10.490862846374512],[6.412304878234863,-10.185354232788086],[6.5544843673706055,-9.871508598327637],[6.681647300720215,-9.549772262573242],[6.793347358703613,-9.220584869384766],[6.8891401290893555,-8.884393692016602],[6.968579292297363,-8.541641235351562],[7.031216621398926,-8.192770004272461],[7.076613426208496,-7.838224411010742],[7.104315757751465,-7.478448867797852],[7.113883018493652,-7.113883972167969],[7.1053361892700195,-6.74826717376709],[7.078587532043457,-6.3874406814575195],[7.03408145904541,-6.031848907470703],[6.972264289855957,-5.681938171386719],[6.893582344055176,-5.338151931762695],[6.798480033874512,-5.000938415527344],[6.687405586242676,-4.670742988586426],[6.560803413391113,-4.348011016845703],[6.419116020202637,-4.0331878662109375],[6.26279354095459,-3.726717948913574],[6.092278480529785,-3.429048538208008],[5.908019065856934,-3.140625],[5.710457801818848,-2.8618927001953125],[5.500042915344238,-2.5932979583740234],[5.277220726013184,-2.3352842330932617],[5.042431831359863,-2.088298797607422],[4.796128273010254,-1.8527889251708984],[4.538751602172852,-1.6291980743408203],[4.270748138427734,-1.4179706573486328],[3.992565155029297,-1.2195549011230469],[3.7046451568603516,-1.0343952178955078],[3.407437324523926,-0.8629360198974609],[3.101384162902832,-0.70562744140625],[2.786932945251465,-0.5629100799560547],[2.4645309448242188,-0.4352302551269531],[2.13461971282959,-0.32303619384765625],[1.7976484298706055,-0.22677230834960938],[1.4540605545043945,-0.14688491821289062],[1.1043024063110352,-0.08381843566894531],[0.7488203048706055,-0.03801727294921875],[0.3880586624145508,-0.009929656982421875],[0.022464752197265625,0],[0,0]]},{"type":"line","version":186,"versionNonce":857599762,"isDeleted":true,"id":"9Qlb4tuIKcoYZQzzSThZK","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":646.7132601737976,"y":326.96286964416504,"strokeColor":"#00000000","backgroundColor":"#aecbfa","width":1.8196568489074707,"height":4.646490097045898,"seed":1766241953,"groupIds":["Ds0GI30dPCA8HPusc2b__","t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,2.796879768371582],[0,2.796879768371582],[0.17416858673095703,3.0759944915771484],[0.36487913131713867,3.342823028564453],[0.5714726448059082,3.596665382385254],[0.7932920455932617,3.836817741394043],[1.0296778678894043,4.062578201293945],[1.2799725532531738,4.273244857788086],[1.5435185432434082,4.46811580657959],[1.8196568489074707,4.646490097045898],[1.8196568489074707,0],[0,0],[0,0]]},{"type":"line","version":186,"versionNonce":155829006,"isDeleted":true,"id":"eno2qBddipOxHBYCGD-1j","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":650.0755071640015,"y":324.38689517974854,"strokeColor":"#00000000","backgroundColor":"#669df6","width":2.2427453994750977,"height":8.085492134094238,"seed":1017004015,"groupIds":["Qf4Uw2dD1cBOrt0fhhU2o","t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,8.004990577697754],[0,8.004990577697754],[0.29485130310058594,8.036524772644043],[0.5897035598754883,8.057877540588379],[0.8845548629760742,8.068699836730957],[1.1794071197509766,8.068642616271973],[1.445591926574707,8.081278800964355],[1.7110748291015625,8.085492134094238],[1.9765596389770508,8.081278800964355],[2.2427453994750977,8.068642616271973],[2.2427453994750977,0],[0,0],[0,0]]},{"type":"line","version":186,"versionNonce":1534213330,"isDeleted":true,"id":"kgGBcS9PhnR92Ey-YuDpV","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":654.0630264282227,"y":328.05616188049316,"strokeColor":"#00000000","backgroundColor":"#aecbfa","width":1.8084230422973633,"height":3.497035026550293,"seed":324614785,"groupIds":["3Vqpitu9fWBXXWT5hUCOd","t0lbLuhQRZhhxlNOYQpuv","Fenm7E6hyXki9PIfw1618"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"23Zvzt8Up1N1pOkvrcj-R","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,3.497035026550293],[0,3.497035026550293],[0.2770538330078125,3.307438850402832],[0.5408821105957031,3.1014394760131836],[0.7908115386962891,2.879755973815918],[1.026169776916504,2.6431102752685547],[1.2462835311889648,2.392223358154297],[1.4504785537719727,2.1278133392333984],[1.6380834579467773,1.850602149963379],[1.8084230422973633,1.5613107681274414],[1.8084230422973633,0],[0,0],[0,0]]},{"type":"arrow","version":130,"versionNonce":2038051150,"isDeleted":true,"id":"N3M63cNjcTvZhPHB36J_k","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":300,"y":261,"strokeColor":"#202124","backgroundColor":"#202124","width":0,"height":58,"seed":1439590927,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":null,"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[0,58]],"fontFamily":2},{"type":"rectangle","version":1265,"versionNonce":393663122,"isDeleted":true,"id":"DYaaB9-Upcbvgkx-N9rbN","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":-880,"y":400,"strokeColor":"#34a853","backgroundColor":"#ceead6","width":900,"height":260,"seed":70271585,"groupIds":[],"strokeSharpness":"sharp","boundElements":[{"id":"PiqrL0eWlHBfTKdGN3bVH","type":"arrow"}],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"a7jxO9KBbu7x0PTSp8V8R","label":"Region","resource":"region","type":"container"}},{"type":"rectangle","version":145,"versionNonce":1577244558,"isDeleted":true,"id":"nL2lT2KxwSWQfETys3YkU","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":280,"y":460,"strokeColor":"#202124","backgroundColor":"#FFF","width":240,"height":80,"seed":1202999343,"groupIds":["v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"round","boundElements":[{"id":"4kXwJH1dLqUAAORSO3NPX","type":"arrow"},{"id":"0jBnfLa8x-7PG-dHNSIyq","type":"arrow"}],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"container"}},{"type":"text","version":144,"versionNonce":434286674,"isDeleted":true,"id":"rasyQ0CHhsp3CsEfuzqpg","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":296,"y":476,"strokeColor":"#1A73F8","backgroundColor":"transparent","width":160,"height":18,"seed":2023444033,"groupIds":["v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"fontSize":16,"fontFamily":2,"text":"BigQuery","baseline":16,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"BigQuery"},{"type":"text","version":155,"versionNonce":1864152526,"isDeleted":true,"id":"jv2zzqV6Bhp1slRGCSA_c","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":296,"y":498,"strokeColor":"#202124","backgroundColor":"transparent","width":120,"height":19,"seed":1815638607,"groupIds":["v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"fontSize":16,"fontFamily":2,"text":"Data Warehouse","baseline":15,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Data Warehouse"},{"type":"line","version":140,"versionNonce":646764050,"isDeleted":true,"id":"g_8oGPIIfJ26l2d6DYb_r","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":498.42121505737305,"y":492.79999923706055,"strokeColor":"transparent","backgroundColor":"#4285f4","width":6.175506591796875,"height":6.175506591796875,"seed":1736039969,"groupIds":["v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-1.508890151977539,1.5088920593261719],[-1.508890151977539,1.5088920593261719],[-1.5668010711669922,1.5783119201660156],[-1.6085205078125,1.6556739807128906],[-1.6340065002441406,1.7383899688720703],[-1.6432132720947266,1.8238697052001953],[-1.6360969543457031,1.9095230102539062],[-1.6126155853271484,1.9927654266357422],[-1.5727252960205078,2.071004867553711],[-1.5163803100585938,2.141653060913086],[-1.508890151977539,2.149141311645508],[2.253978729248047,5.912012100219727],[2.253978729248047,5.912012100219727],[2.3232383728027344,5.968524932861328],[2.400175094604492,6.008892059326172],[2.4822921752929688,6.033111572265625],[2.5670833587646484,6.04118537902832],[2.6520519256591797,6.033111572265625],[2.7346935272216797,6.008892059326172],[2.8125076293945312,5.968524932861328],[2.88299560546875,5.912012100219727],[4.403120040893555,4.391887664794922],[4.403120040893555,4.391887664794922],[4.459634780883789,4.322628021240234],[4.5,4.245691299438477],[4.524219512939453,4.16357421875],[4.532293319702148,4.07878303527832],[4.524219512939453,3.993816375732422],[4.5,3.911174774169922],[4.459634780883789,3.8333587646484375],[4.403120040893555,3.7628707885742188],[0.6365070343017578,0],[0.6365070343017578,0],[0.5670852661132812,-0.057910919189453125],[0.48972320556640625,-0.09963035583496094],[0.4070091247558594,-0.12511444091796875],[0.3215293884277344,-0.1343212127685547],[0.23587417602539062,-0.12720489501953125],[0.1526336669921875,-0.10372543334960938],[0.07439422607421875,-0.06383323669433594],[0.00374603271484375,-0.007488250732421875],[0,0]]},{"type":"line","version":140,"versionNonce":1977666574,"isDeleted":true,"id":"usRDjBw5ws4B7H-WHKaeX","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":491.25491428375244,"y":477.5725427865982,"strokeColor":"transparent","backgroundColor":"#669df6","width":19.140093445777893,"height":19.140092253684998,"seed":1278431343,"groupIds":["v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.49259281158447266,0.012448668479919434],[-0.9787044525146484,0.04939424991607666],[-1.4577360153198242,0.1102362871170044],[-1.9290857315063477,0.19437408447265625],[-2.392153739929199,0.3012070655822754],[-2.8463401794433594,0.430134654045105],[-3.291043758392334,0.5805565118789673],[-3.725663661956787,0.7518719434738159],[-4.149599075317383,0.943480372428894],[-4.562250137329102,1.1547812223434448],[-4.963016510009766,1.3851739168167114],[-5.351297378540039,1.6340581178665161],[-5.726491451263428,1.900833010673523],[-6.087998867034912,2.184897780418396],[-6.435218811035156,2.4856523275375366],[-6.767550945281982,2.802495837211609],[-7.084394454956055,3.134827971458435],[-7.385149240493774,3.4820483922958374],[-7.6692140102386475,3.8435558080673218],[-7.935988903045654,4.2187498807907104],[-8.184873104095459,4.607030749320984],[-8.415265798568726,5.00779664516449],[-8.626566410064697,5.4204477071762085],[-8.818174839019775,5.844383597373962],[-8.989490509033203,6.2790035009384155],[-9.139912366867065,6.723706603050232],[-9.268839955329895,7.177893042564392],[-9.375672936439514,7.640961050987244],[-9.459810733795166,8.112310767173767],[-9.520652770996094,8.591342329978943],[-9.557598352432251,9.077454924583435],[-9.57004702091217,9.570046782493591],[-9.557598352432251,10.062638640403748],[-9.520652770996094,10.548750281333923],[-9.459810733795166,11.0277818441391],[-9.375672936439514,11.499131560325623],[-9.268839955329895,11.96220052242279],[-9.139912366867065,12.416386008262634],[-8.989490509033203,12.861090064048767],[-8.818174839019775,13.29570996761322],[-8.626566410064697,13.719644904136658],[-8.415265798568726,14.132296919822693],[-8.184873104095459,14.533063292503357],[-7.935988903045654,14.92134416103363],[-7.6692140102386475,15.296536803245544],[-7.385149240493774,15.658044219017029],[-7.084394454956055,16.005265593528748],[-6.767550945281982,16.3375962972641],[-6.435218811035156,16.654441237449646],[-6.087998867034912,16.955195784568787],[-5.726491451263428,17.239259123802185],[-5.351297378540039,17.50603425502777],[-4.963016510009766,17.754918456077576],[-4.562250137329102,17.985310912132263],[-4.149599075317383,18.19661271572113],[-3.725663661956787,18.38822114467621],[-3.291043758392334,18.55953538417816],[-2.8463401794433594,18.709956526756287],[-2.392153739929199,18.83888566493988],[-1.9290857315063477,18.945720076560974],[-1.4577360153198242,19.0298570394516],[-0.9787044525146484,19.090697646141052],[-0.49259281158447266,19.12764298915863],[0,19.140092253684998],[0.49259185791015625,19.12764298915863],[0.978703498840332,19.090697646141052],[1.4577350616455078,19.0298570394516],[1.9290847778320312,18.945720076560974],[2.392153739929199,18.83888566493988],[2.846339225769043,18.709956526756287],[3.291043281555176,18.55953538417816],[3.7256622314453125,18.38822114467621],[4.149598121643066,18.19661271572113],[4.562249183654785,17.985310912132263],[4.963015556335449,17.754918456077576],[5.351296424865723,17.50603425502777],[5.7264909744262695,17.239259123802185],[6.087996482849121,16.955195784568787],[6.43521785736084,16.654441237449646],[6.767550468444824,16.3375962972641],[7.084393501281738,16.005265593528748],[7.385148048400879,15.658044219017029],[7.66921329498291,15.296536803245544],[7.935986518859863,14.92134416103363],[8.184870719909668,14.533063292503357],[8.415265083312988,14.132296919822693],[8.626564979553223,13.719644904136658],[8.818175315856934,13.29570996761322],[8.989487648010254,12.861090064048767],[9.139910697937012,12.416386008262634],[9.268839836120605,11.96220052242279],[9.375672340393066,11.499131560325623],[9.459811210632324,11.0277818441391],[9.520649909973145,10.548750281333923],[9.557595252990723,10.062638640403748],[9.570046424865723,9.570046782493591],[9.557587623596191,9.077454924583435],[9.520609855651855,8.591342329978943],[9.45971965789795,8.112310767173767],[9.375519752502441,7.640961050987244],[9.268609046936035,7.177893042564392],[9.1395902633667,6.723706603050232],[8.989069938659668,6.2790035009384155],[8.817646980285645,5.844383597373962],[8.62592601776123,5.4204477071762085],[8.414509773254395,5.00779664516449],[8.184000968933105,4.607030749320984],[7.935000419616699,4.2187498807907104],[7.668112754821777,3.8435558080673218],[7.383938789367676,3.4820483922958374],[7.083081245422363,3.134827971458435],[6.766144752502441,2.802495837211609],[6.433732032775879,2.4856523275375366],[6.086441993713379,2.184897780418396],[5.724881172180176,1.900833010673523],[5.3496503829956055,1.6340581178665161],[4.961352348327637,1.3851739168167114],[4.560590744018555,1.1547812223434448],[4.147966384887695,0.943480372428894],[3.7240819931030273,0.7518719434738159],[3.2895421981811523,0.5805565118789673],[2.8449487686157227,0.430134654045105],[2.3909034729003906,0.3012070655822754],[1.928009033203125,0.19437408447265625],[1.4568700790405273,0.1102362871170044],[0.9780864715576172,0.04939424991607666],[0.4922628402709961,0.012448668479919434],[0,0]]},{"type":"line","version":140,"versionNonce":1852589010,"isDeleted":true,"id":"rmVF8p_ePYCrvy5d1mwk8","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":491.25491428375244,"y":494.25647354125977,"strokeColor":"transparent","backgroundColor":"#669df6","width":14.205303192138672,"height":14.20530366897583,"seed":1069249025,"groupIds":["v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.36559581756591797,-0.009929656982421875],[-0.7263565063476562,-0.03801727294921875],[-1.081838607788086,-0.08381843566894531],[-1.4315967559814453,-0.14688491821289062],[-1.7751836776733398,-0.22677230834960938],[-2.112156867980957,-0.32303619384765625],[-2.4420671463012695,-0.4352302551269531],[-2.764470100402832,-0.5629100799560547],[-3.078920364379883,-0.70562744140625],[-3.3849730491638184,-0.8629360198974609],[-3.6821823120117188,-1.0343952178955078],[-3.9701008796691895,-1.2195549011230469],[-4.248284816741943,-1.4179706573486328],[-4.516287803649902,-1.6291980743408203],[-4.773664474487305,-1.8527889251708984],[-5.019969463348389,-2.088298797607422],[-5.254756450653076,-2.3352842330932617],[-5.4775800704956055,-2.5932979583740234],[-5.687994480133057,-2.8618927001953125],[-5.885554790496826,-3.140625],[-6.069815635681152,-3.429048538208008],[-6.240329742431641,-3.726717948913574],[-6.396652698516846,-4.0331878662109375],[-6.538338661193848,-4.348011016845703],[-6.664942264556885,-4.670742988586426],[-6.776017189025879,-5.000938415527344],[-6.871118545532227,-5.338151931762695],[-6.949800491333008,-5.681938171386719],[-7.0116167068481445,-6.031848907470703],[-7.056122779846191,-6.3874406814575195],[-7.08287239074707,-6.74826717376709],[-7.0914201736450195,-7.113883972167969],[-7.081490516662598,-7.47947883605957],[-7.053402900695801,-7.840239524841309],[-7.007602214813232,-8.195722579956055],[-6.944535255432129,-8.545480728149414],[-6.864646911621094,-8.889067649841309],[-6.768383026123047,-9.22603988647461],[-6.65618896484375,-9.555950164794922],[-6.528510570526123,-9.8783540725708],[-6.385793209075928,-10.192804336547852],[-6.228483200073242,-10.498857021331787],[-6.057024955749512,-10.79606580734253],[-5.871865749359131,-11.083984851837158],[-5.673449516296387,-11.362168312072754],[-5.462223052978516,-11.630171298980713],[-5.238631725311279,-11.887547969818115],[-5.003120422363281,-12.1338529586792],[-4.756135940551758,-12.368639945983887],[-4.498122692108154,-12.591463565826416],[-4.229527473449707,-12.801878452301025],[-3.9507951736450195,-12.999438762664795],[-3.6623711585998535,-13.183699131011963],[-3.3647022247314453,-13.35421371459961],[-3.0582332611083984,-13.510536670684814],[-2.7434091567993164,-13.652222633361816],[-2.4206771850585938,-13.778826236724854],[-2.0904808044433594,-13.889901161193848],[-1.7532682418823242,-13.985002517700195],[-1.4094829559326172,-14.063683986663818],[-1.0595712661743164,-14.125500679016113],[-0.7039785385131836,-14.17000675201416],[-0.3431520462036133,-14.196756362915039],[0.022464752197265625,-14.20530366897583],[0.3870382308959961,-14.195406913757324],[0.7468461990356445,-14.167415142059326],[1.1014394760131836,-14.121772766113281],[1.4503746032714844,-14.058923244476318],[1.7932062149047852,-13.979310512542725],[2.129486083984375,-13.883377075195312],[2.4587717056274414,-13.771567344665527],[2.78061580657959,-13.644324779510498],[3.094572067260742,-13.502092361450195],[3.400197982788086,-13.345314979553223],[3.6970434188842773,-13.174434185028076],[3.9846668243408203,-12.989895343780518],[4.262619972229004,-12.792141437530518],[4.530458450317383,-12.581615924835205],[4.787737846374512,-12.358762741088867],[5.0340070724487305,-12.124024391174316],[5.268828392028809,-11.877845287322998],[5.491751670837402,-11.6206693649292],[5.702330589294434,-11.35293960571289],[5.900120735168457,-11.075099468231201],[6.084677696228027,-10.787592887878418],[6.255553245544434,-10.490862846374512],[6.412304878234863,-10.185354232788086],[6.5544843673706055,-9.871508598327637],[6.681647300720215,-9.549772262573242],[6.793347358703613,-9.220584869384766],[6.8891401290893555,-8.884393692016602],[6.968579292297363,-8.541641235351562],[7.031216621398926,-8.192770004272461],[7.076613426208496,-7.838224411010742],[7.104315757751465,-7.478448867797852],[7.113883018493652,-7.113883972167969],[7.1053361892700195,-6.74826717376709],[7.078587532043457,-6.3874406814575195],[7.03408145904541,-6.031848907470703],[6.972264289855957,-5.681938171386719],[6.893582344055176,-5.338151931762695],[6.798480033874512,-5.000938415527344],[6.687405586242676,-4.670742988586426],[6.560803413391113,-4.348011016845703],[6.419116020202637,-4.0331878662109375],[6.26279354095459,-3.726717948913574],[6.092278480529785,-3.429048538208008],[5.908019065856934,-3.140625],[5.710457801818848,-2.8618927001953125],[5.500042915344238,-2.5932979583740234],[5.277220726013184,-2.3352842330932617],[5.042431831359863,-2.088298797607422],[4.796128273010254,-1.8527889251708984],[4.538751602172852,-1.6291980743408203],[4.270748138427734,-1.4179706573486328],[3.992565155029297,-1.2195549011230469],[3.7046451568603516,-1.0343952178955078],[3.407437324523926,-0.8629360198974609],[3.101384162902832,-0.70562744140625],[2.786932945251465,-0.5629100799560547],[2.4645309448242188,-0.4352302551269531],[2.13461971282959,-0.32303619384765625],[1.7976484298706055,-0.22677230834960938],[1.4540605545043945,-0.14688491821289062],[1.1043024063110352,-0.08381843566894531],[0.7488203048706055,-0.03801727294921875],[0.3880586624145508,-0.009929656982421875],[0.022464752197265625,0],[0,0]]},{"type":"line","version":140,"versionNonce":810031694,"isDeleted":true,"id":"cbIBZylvCmBG1E6rhpd6R","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":491.25491428375244,"y":494.25647354125977,"strokeColor":"transparent","backgroundColor":"#fff","width":14.205303192138672,"height":14.20530366897583,"seed":1097689743,"groupIds":["v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.36559581756591797,-0.009929656982421875],[-0.7263565063476562,-0.03801727294921875],[-1.081838607788086,-0.08381843566894531],[-1.4315967559814453,-0.14688491821289062],[-1.7751836776733398,-0.22677230834960938],[-2.112156867980957,-0.32303619384765625],[-2.4420671463012695,-0.4352302551269531],[-2.764470100402832,-0.5629100799560547],[-3.078920364379883,-0.70562744140625],[-3.3849730491638184,-0.8629360198974609],[-3.6821823120117188,-1.0343952178955078],[-3.9701008796691895,-1.2195549011230469],[-4.248284816741943,-1.4179706573486328],[-4.516287803649902,-1.6291980743408203],[-4.773664474487305,-1.8527889251708984],[-5.019969463348389,-2.088298797607422],[-5.254756450653076,-2.3352842330932617],[-5.4775800704956055,-2.5932979583740234],[-5.687994480133057,-2.8618927001953125],[-5.885554790496826,-3.140625],[-6.069815635681152,-3.429048538208008],[-6.240329742431641,-3.726717948913574],[-6.396652698516846,-4.0331878662109375],[-6.538338661193848,-4.348011016845703],[-6.664942264556885,-4.670742988586426],[-6.776017189025879,-5.000938415527344],[-6.871118545532227,-5.338151931762695],[-6.949800491333008,-5.681938171386719],[-7.0116167068481445,-6.031848907470703],[-7.056122779846191,-6.3874406814575195],[-7.08287239074707,-6.74826717376709],[-7.0914201736450195,-7.113883972167969],[-7.081490516662598,-7.47947883605957],[-7.053402900695801,-7.840239524841309],[-7.007602214813232,-8.195722579956055],[-6.944535255432129,-8.545480728149414],[-6.864646911621094,-8.889067649841309],[-6.768383026123047,-9.22603988647461],[-6.65618896484375,-9.555950164794922],[-6.528510570526123,-9.8783540725708],[-6.385793209075928,-10.192804336547852],[-6.228483200073242,-10.498857021331787],[-6.057024955749512,-10.79606580734253],[-5.871865749359131,-11.083984851837158],[-5.673449516296387,-11.362168312072754],[-5.462223052978516,-11.630171298980713],[-5.238631725311279,-11.887547969818115],[-5.003120422363281,-12.1338529586792],[-4.756135940551758,-12.368639945983887],[-4.498122692108154,-12.591463565826416],[-4.229527473449707,-12.801878452301025],[-3.9507951736450195,-12.999438762664795],[-3.6623711585998535,-13.183699131011963],[-3.3647022247314453,-13.35421371459961],[-3.0582332611083984,-13.510536670684814],[-2.7434091567993164,-13.652222633361816],[-2.4206771850585938,-13.778826236724854],[-2.0904808044433594,-13.889901161193848],[-1.7532682418823242,-13.985002517700195],[-1.4094829559326172,-14.063683986663818],[-1.0595712661743164,-14.125500679016113],[-0.7039785385131836,-14.17000675201416],[-0.3431520462036133,-14.196756362915039],[0.022464752197265625,-14.20530366897583],[0.3870382308959961,-14.195406913757324],[0.7468461990356445,-14.167415142059326],[1.1014394760131836,-14.121772766113281],[1.4503746032714844,-14.058923244476318],[1.7932062149047852,-13.979310512542725],[2.129486083984375,-13.883377075195312],[2.4587717056274414,-13.771567344665527],[2.78061580657959,-13.644324779510498],[3.094572067260742,-13.502092361450195],[3.400197982788086,-13.345314979553223],[3.6970434188842773,-13.174434185028076],[3.9846668243408203,-12.989895343780518],[4.262619972229004,-12.792141437530518],[4.530458450317383,-12.581615924835205],[4.787737846374512,-12.358762741088867],[5.0340070724487305,-12.124024391174316],[5.268828392028809,-11.877845287322998],[5.491751670837402,-11.6206693649292],[5.702330589294434,-11.35293960571289],[5.900120735168457,-11.075099468231201],[6.084677696228027,-10.787592887878418],[6.255553245544434,-10.490862846374512],[6.412304878234863,-10.185354232788086],[6.5544843673706055,-9.871508598327637],[6.681647300720215,-9.549772262573242],[6.793347358703613,-9.220584869384766],[6.8891401290893555,-8.884393692016602],[6.968579292297363,-8.541641235351562],[7.031216621398926,-8.192770004272461],[7.076613426208496,-7.838224411010742],[7.104315757751465,-7.478448867797852],[7.113883018493652,-7.113883972167969],[7.1053361892700195,-6.74826717376709],[7.078587532043457,-6.3874406814575195],[7.03408145904541,-6.031848907470703],[6.972264289855957,-5.681938171386719],[6.893582344055176,-5.338151931762695],[6.798480033874512,-5.000938415527344],[6.687405586242676,-4.670742988586426],[6.560803413391113,-4.348011016845703],[6.419116020202637,-4.0331878662109375],[6.26279354095459,-3.726717948913574],[6.092278480529785,-3.429048538208008],[5.908019065856934,-3.140625],[5.710457801818848,-2.8618927001953125],[5.500042915344238,-2.5932979583740234],[5.277220726013184,-2.3352842330932617],[5.042431831359863,-2.088298797607422],[4.796128273010254,-1.8527889251708984],[4.538751602172852,-1.6291980743408203],[4.270748138427734,-1.4179706573486328],[3.992565155029297,-1.2195549011230469],[3.7046451568603516,-1.0343952178955078],[3.407437324523926,-0.8629360198974609],[3.101384162902832,-0.70562744140625],[2.786932945251465,-0.5629100799560547],[2.4645309448242188,-0.4352302551269531],[2.13461971282959,-0.32303619384765625],[1.7976484298706055,-0.22677230834960938],[1.4540605545043945,-0.14688491821289062],[1.1043024063110352,-0.08381843566894531],[0.7488203048706055,-0.03801727294921875],[0.3880586624145508,-0.009929656982421875],[0.022464752197265625,0],[0,0]]},{"type":"line","version":140,"versionNonce":1805121938,"isDeleted":true,"id":"f4tuTGE4Jh1gzQ70-xIN_","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":486.7132601737976,"y":486.96286964416504,"strokeColor":"#00000000","backgroundColor":"#aecbfa","width":1.8196568489074707,"height":4.646490097045898,"seed":1717537249,"groupIds":["kt5YX_q77_IepwRy7W0dT","v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,2.796879768371582],[0,2.796879768371582],[0.17416858673095703,3.0759944915771484],[0.36487913131713867,3.342823028564453],[0.5714726448059082,3.596665382385254],[0.7932920455932617,3.836817741394043],[1.0296778678894043,4.062578201293945],[1.2799725532531738,4.273244857788086],[1.5435185432434082,4.46811580657959],[1.8196568489074707,4.646490097045898],[1.8196568489074707,0],[0,0],[0,0]]},{"type":"line","version":140,"versionNonce":892051598,"isDeleted":true,"id":"uAQjzSIMVu7foiNKig1Ua","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":490.07550716400146,"y":484.38689517974854,"strokeColor":"#00000000","backgroundColor":"#669df6","width":2.2427453994750977,"height":8.085492134094238,"seed":1486831791,"groupIds":["bvKsdz5PYT61BwaiJ78bc","v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,8.004990577697754],[0,8.004990577697754],[0.29485130310058594,8.036524772644043],[0.5897035598754883,8.057877540588379],[0.8845548629760742,8.068699836730957],[1.1794071197509766,8.068642616271973],[1.445591926574707,8.081278800964355],[1.7110748291015625,8.085492134094238],[1.9765596389770508,8.081278800964355],[2.2427453994750977,8.068642616271973],[2.2427453994750977,0],[0,0],[0,0]]},{"type":"line","version":140,"versionNonce":1028061010,"isDeleted":true,"id":"sMoTA5a160FCKmlnFJo55","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":494.06302642822266,"y":488.05616188049316,"strokeColor":"#00000000","backgroundColor":"#aecbfa","width":1.8084230422973633,"height":3.497035026550293,"seed":1953867201,"groupIds":["PwHcwbiCZw-OC4KjfEQzg","v8lQ__53E0vPA8v-5gan6","aTDwA9ewNATgCq8fU7PSE"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"RypXleBEkT_Umab_0FLYS","label":"BigQuery","resource":"google_bigquery_dataset","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,3.497035026550293],[0,3.497035026550293],[0.2770538330078125,3.307438850402832],[0.5408821105957031,3.1014394760131836],[0.7908115386962891,2.879755973815918],[1.026169776916504,2.6431102752685547],[1.2462835311889648,2.392223358154297],[1.4504785537719727,2.1278133392333984],[1.6380834579467773,1.850602149963379],[1.8084230422973633,1.5613107681274414],[1.8084230422973633,0],[0,0],[0,0]]},{"type":"rectangle","version":124,"versionNonce":1480875726,"isDeleted":true,"id":"iHAHXdGWgA7lLPLlYdzk4","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":620,"y":460,"strokeColor":"#202124","backgroundColor":"#FFF","width":240,"height":80,"seed":1936806607,"groupIds":["aoKZODF-OayrU79mHUl_c","17m6ln345brAeK1O4uDqG"],"strokeSharpness":"round","boundElements":[{"id":"0jBnfLa8x-7PG-dHNSIyq","type":"arrow"}],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"GdJxz75HD8Kp3UUxJcpGK","label":"Looker Studio","type":"container"}},{"type":"text","version":120,"versionNonce":63978770,"isDeleted":true,"id":"xz3-NJXbvk7bJrFHdyA7W","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":636,"y":476,"strokeColor":"#1A73F8","backgroundColor":"transparent","width":160,"height":18,"seed":891110817,"groupIds":["aoKZODF-OayrU79mHUl_c","17m6ln345brAeK1O4uDqG"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"GdJxz75HD8Kp3UUxJcpGK","label":"Looker Studio","type":"child"},"fontSize":16,"fontFamily":2,"text":"Looker Studio","baseline":16,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Looker Studio"},{"type":"text","version":139,"versionNonce":237720846,"isDeleted":true,"id":"Ja-6sfaquNvBjyxhpayRh","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":636,"y":498,"strokeColor":"#202124","backgroundColor":"transparent","width":99,"height":19,"seed":712777967,"groupIds":["aoKZODF-OayrU79mHUl_c","17m6ln345brAeK1O4uDqG"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"GdJxz75HD8Kp3UUxJcpGK","label":"Looker Studio","type":"child"},"fontSize":16,"fontFamily":2,"text":"Visualizations","baseline":15,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Visualizations"},{"type":"line","version":120,"versionNonce":1017826002,"isDeleted":true,"id":"lv3E4PkfO4Mfz0QfMGIDG","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":831.934796333313,"y":478.25,"strokeColor":"#00000000","backgroundColor":"#aecbfa","width":3.444951057434082,"height":3.3636693954467773,"seed":1669720449,"groupIds":["RJ9HV3J7GAggYoRpmTAKv","aoKZODF-OayrU79mHUl_c","17m6ln345brAeK1O4uDqG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"GdJxz75HD8Kp3UUxJcpGK","label":"Looker Studio","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.17994022369384766,0.008455276489257812],[-0.3534507751464844,0.03334450721740723],[-0.5198154449462891,0.07395315170288086],[-0.6783208847045898,0.12956690788269043],[-0.8282508850097656,0.19947099685668945],[-0.9688930511474609,0.28295135498046875],[-1.099532127380371,0.37929272651672363],[-1.2194528579711914,0.4877810478210449],[-1.3279409408569336,0.6077020168304443],[-1.4242830276489258,0.7383408546447754],[-1.5077619552612305,0.8789827823638916],[-1.577667236328125,1.0289134979248047],[-1.6332807540893555,1.1874184608459473],[-1.67388916015625,1.3537836074829102],[-1.6987791061401367,1.5272934436798096],[-1.7072334289550781,1.7072343826293945],[-1.6907224655151367,1.9511208534240723],[-1.668654441833496,2.0730676651000977],[-1.6361074447631836,2.1950159072875977],[-1.5921268463134766,2.3169636726379395],[-1.5357608795166016,2.438910484313965],[-1.4660577774047852,2.5608553886413574],[-1.3820619583129883,2.6827969551086426],[-0.650390625,1.951125144958496],[-0.650390625,1.7072343826293945],[-0.650390625,1.7072343826293945],[-0.6356239318847656,1.5590853691101074],[-0.5932302474975586,1.4214184284210205],[-0.5260677337646484,1.2970912456512451],[-0.43699169158935547,1.1889610290527344],[-0.3288612365722656,1.0998854637145996],[-0.20453453063964844,1.032721996307373],[-0.06686687469482422,0.9903287887573242],[0.08128070831298828,0.975562334060669],[0.2294301986694336,0.9903287887573242],[0.3670969009399414,1.032721996307373],[0.491424560546875,1.0998854637145996],[0.5995550155639648,1.1889610290527344],[0.6886301040649414,1.2970912456512451],[0.7557945251464844,1.4214184284210205],[0.7981882095336914,1.5590853691101074],[0.812952995300293,1.7072343826293945],[0.7981882095336914,1.8553833961486816],[0.7557945251464844,1.9930505752563477],[0.6886301040649414,2.117377758026123],[0.5995550155639648,2.2255077362060547],[0.491424560546875,2.3145833015441895],[0.3670969009399414,2.381746292114258],[0.2294301986694336,2.424139976501465],[0.08128070831298828,2.438906192779541],[-0.16260910034179688,2.438906192779541],[-0.8942804336547852,3.089296817779541],[-0.8942804336547852,3.089296817779541],[-0.739192008972168,3.1731338500976562],[-0.5795764923095703,3.241727828979492],[-0.4166259765625,3.2950782775878906],[-0.25153160095214844,3.3331851959228516],[-0.08548355102539062,3.356049060821533],[0.08032703399658203,3.3636693954467773],[0.24470806121826172,3.3560471534729004],[0.40647029876708984,3.333181381225586],[0.5644235610961914,3.2950730323791504],[0.717371940612793,3.2417216300964355],[0.8641300201416016,3.1731271743774414],[1.003504753112793,3.0892906188964844],[1.134303092956543,2.99021053314209],[1.2553377151489258,2.875887870788574],[1.3654146194458008,2.7463231086730957],[1.463343620300293,2.601515769958496],[1.5471820831298828,2.4464268684387207],[1.6157751083374023,2.2868118286132812],[1.6691255569458008,2.123861312866211],[1.7072334289550781,1.9587664604187012],[1.7300958633422852,1.7927179336547852],[1.737717628479004,1.6269078254699707],[1.7300939559936523,1.4625258445739746],[1.707228660583496,1.3007636070251465],[1.6691198348999023,1.1428120136260986],[1.615769386291504,0.9898619651794434],[1.547175407409668,0.843104362487793],[1.4633378982543945,0.703730583190918],[1.3642587661743164,0.5729315280914307],[1.2499361038208008,0.45189762115478516],[1.1203699111938477,0.34182024002075195],[0.9755620956420898,0.24389052391052246],[0.8802938461303711,0.18672418594360352],[0.7774038314819336,0.13718199729919434],[0.6668920516967773,0.09526300430297852],[0.5487604141235352,0.06096673011779785],[0.4230051040649414,0.03429293632507324],[0.2896261215209961,0.015241146087646484],[0.14862537384033203,0.0038101673126220703],[0,0],[0,0]]},{"type":"line","version":120,"versionNonce":1348043598,"isDeleted":true,"id":"hi-sManixaxYkyjn_NM49","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":831.2844533920288,"y":483.2091407775879,"strokeColor":"#00000000","backgroundColor":"#669df6","width":1.7072343826293945,"height":3.902249813079834,"seed":1867000591,"groupIds":["XKXrpiSYsFd_sg-EA4r4W","aoKZODF-OayrU79mHUl_c","17m6ln345brAeK1O4uDqG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"GdJxz75HD8Kp3UUxJcpGK","label":"Looker Studio","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.007622718811035156,-0.2132415771484375],[-0.030488967895507812,-0.4255342483520508],[-0.06859874725341797,-0.6359243392944336],[-0.12195110321044922,-0.8434572219848633],[-0.19054698944091797,-1.04718017578125],[-0.274383544921875,-1.2461400032043457],[-0.3734626770019531,-1.4393820762634277],[-0.4877815246582031,-1.625953197479248],[-1.463343620300293,-0.650390625],[-1.463343620300293,-0.650390625],[-1.4036455154418945,-0.48017311096191406],[-1.3515586853027344,-0.3251953125],[-1.3147125244140625,-0.17021846771240234],[-1.3043880462646484,-0.0879669189453125],[-1.300734519958496,0],[-1.3081979751586914,0.14862489700317383],[-1.3299531936645508,0.2896270751953125],[-1.365046501159668,0.4230051040649414],[-1.4125261306762695,0.5487594604492188],[-1.4714374542236328,0.6668920516967773],[-1.540827751159668,0.7774033546447754],[-1.6197443008422852,0.8802928924560547],[-1.7072343826293945,0.9755620956420898],[-1.2194528579711914,2.276296615600586],[-1.2194528579711914,2.276296615600586],[-1.0717878341674805,2.180173873901367],[-0.9336481094360352,2.075118064880371],[-0.8050355911254883,1.9617271423339844],[-0.6859493255615234,1.8405942916870117],[-0.5763893127441406,1.7123165130615234],[-0.47635650634765625,1.5774898529052734],[-0.3858489990234375,1.4367084503173828],[-0.3048696517944336,1.290567398071289],[-0.23341655731201172,1.1396656036376953],[-0.17148971557617188,0.9845943450927734],[-0.11909008026123047,0.8259515762329102],[-0.0762186050415039,0.664332389831543],[-0.04287242889404297,0.5003318786621094],[-0.019054412841796875,0.3345456123352051],[-0.004763603210449219,0.1675701141357422],[0,0],[0,0]]},{"type":"line","version":120,"versionNonce":510501010,"isDeleted":true,"id":"RqM-RGkzd6CkH7bjvD5bI","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":828.6829376220703,"y":484.5911560058594,"strokeColor":"#00000000","backgroundColor":"#669df6","width":4.471312999725342,"height":5.365593910217285,"seed":686756193,"groupIds":["bwrehPALZbZq3dciq3XNx","aoKZODF-OayrU79mHUl_c","17m6ln345brAeK1O4uDqG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"GdJxz75HD8Kp3UUxJcpGK","label":"Looker Studio","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.13609695434570312,-0.00656890869140625],[-0.2694549560546875,-0.025880813598632812],[-0.39924144744873047,-0.057338714599609375],[-0.5246210098266602,-0.10034751892089844],[-0.6447620391845703,-0.1543130874633789],[-0.7588291168212891,-0.21863937377929688],[-0.8659892082214355,-0.29272937774658203],[-0.9654083251953125,-0.3759899139404297],[-1.056253433227539,-0.46782493591308594],[-1.137690544128418,-0.5676383972167969],[-1.2088861465454102,-0.674835205078125],[-1.2690067291259766,-0.7888202667236328],[-1.31721830368042,-0.9089984893798828],[-1.352686882019043,-1.0347728729248047],[-1.3745794296264648,-1.1655502319335938],[-1.3820629119873047,-1.3007335662841797],[-1.375493049621582,-1.4368314743041992],[-1.3561820983886719,-1.5701894760131836],[-1.324723243713379,-1.6999750137329102],[-1.2817144393920898,-1.8253555297851562],[-1.2277488708496094,-1.9454960823059082],[-1.1634235382080078,-2.0595626831054688],[-1.0893325805664062,-2.1667232513427734],[-1.0060720443725586,-2.2661423683166504],[-0.9142374992370605,-2.356987953186035],[-0.8144245147705078,-2.438424587249756],[-0.7072277069091797,-2.5096206665039062],[-0.5932426452636719,-2.5697402954101562],[-0.4730644226074219,-2.617952346801758],[-0.3472890853881836,-2.653421401977539],[-0.21651172637939453,-2.675313949584961],[-0.08132743835449219,-2.6827964782714844],[0.013623237609863281,-2.6789865493774414],[0.11429023742675781,-2.667555809020996],[0.3251485824584961,-2.6218299865722656],[0.5360069274902344,-2.5456151962280273],[0.6366739273071289,-2.4960718154907227],[0.7316246032714844,-2.438905715942383],[1.7071876525878906,-3.3331871032714844],[1.7071876525878906,-3.3331871032714844],[1.4936275482177734,-3.5046730041503906],[1.2791128158569336,-3.6532936096191406],[1.0626907348632812,-3.779049873352051],[0.843409538269043,-3.881941318511963],[0.6203193664550781,-3.961967945098877],[0.39246654510498047,-4.019129753112793],[0.15890121459960938,-4.053426742553711],[-0.08132743835449219,-4.064859390258789],[-0.35260868072509766,-4.050806999206543],[-0.6167440414428711,-4.0096025466918945],[-0.8723058700561523,-3.9426755905151367],[-1.117863655090332,-3.851454734802246],[-1.3519887924194336,-3.7373695373535156],[-1.5732526779174805,-3.6018481254577637],[-1.780226230621338,-3.446320056915283],[-1.971480369567871,-3.272214889526367],[-2.1455860137939453,-3.080960750579834],[-2.301114082336426,-2.8739871978759766],[-2.4366350173950195,-2.6527228355407715],[-2.5507211685180664,-2.41859769821167],[-2.6419410705566406,-2.173039436340332],[-2.7088685035705566,-1.917478084564209],[-2.750072956085205,-1.6533427238464355],[-2.764125347137451,-1.3820619583129883],[-2.7509660720825195,-1.1107816696166992],[-2.7122020721435547,-0.8466458320617676],[-2.64890718460083,-0.5910854339599609],[-2.5621509552001953,-0.34552669525146484],[-2.4530067443847656,-0.11140155792236328],[-2.322545051574707,0.1098623275756836],[-2.171839714050293,0.3168363571166992],[-2.0019612312316895,0.5080900192260742],[-1.813981056213379,0.6821956634521484],[-1.6089725494384766,0.8377237319946289],[-1.3880057334899902,0.9732446670532227],[-1.1521539688110352,1.0873308181762695],[-0.9024887084960938,1.1785516738891602],[-0.640080451965332,1.2454776763916016],[-0.36600399017333984,1.28668212890625],[-0.08132743835449219,1.300734519958496],[0.053328514099121094,1.2994651794433594],[0.20322036743164062,1.2905750274658203],[0.3531036376953125,1.266444206237793],[0.42327880859375,1.2462825775146484],[0.4877347946166992,1.2194538116455078],[-0.00004673004150390625,0],[0,0]]},{"type":"line","version":120,"versionNonce":19392910,"isDeleted":true,"id":"ZDa5aYhmxJOkXlzeYdjTY","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":832.0161247253418,"y":485.6480464935303,"strokeColor":"#00000000","backgroundColor":"#4285f4","width":12.04841136932373,"height":12.080839157104492,"seed":1850601775,"groupIds":["o-BtIZ21gP2H5JvBLlRQd","aoKZODF-OayrU79mHUl_c","17m6ln345brAeK1O4uDqG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"GdJxz75HD8Kp3UUxJcpGK","label":"Looker Studio","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.4268035888671875,0.015241622924804688],[-0.8536167144775391,0.060967445373535156],[-1.2804298400878906,0.13718223571777344],[-1.7072334289550781,0.24389076232910156],[-0.9755620956420898,2.032406806945801],[-0.9755620956420898,2.032406806945801],[-0.7316761016845703,2.0197067260742188],[-0.4877805709838867,1.9917659759521484],[-0.24388599395751953,1.9638252258300781],[0,1.9511260986328125],[0.21193504333496094,1.9565563201904297],[0.4207725524902344,1.9726600646972656],[0.6262760162353516,1.999155044555664],[0.8282089233398438,2.035757064819336],[1.0263290405273438,2.082183837890625],[1.2204017639160156,2.138153076171875],[1.410186767578125,2.2033815383911133],[1.5954465866088867,2.277585983276367],[1.7759437561035156,2.360483169555664],[1.9514389038085938,2.451791763305664],[2.121694564819336,2.551227569580078],[2.2864723205566406,2.65850830078125],[2.445535659790039,2.773350715637207],[2.5986413955688477,2.8954734802246094],[2.745555877685547,3.0245914459228516],[2.8860416412353516,3.16042423248291],[3.019857406616211,3.3026866912841797],[3.1467647552490234,3.4510974884033203],[3.266529083251953,3.6053733825683594],[3.378908157348633,3.7652320861816406],[3.4836654663085938,3.9303884506225586],[3.580564498901367,4.10056209564209],[3.6693649291992188,4.275468826293945],[3.7498302459716797,4.454828262329102],[3.8217201232910156,4.638354301452637],[3.8847970962524414,4.825765609741211],[3.938823699951172,5.016780853271484],[3.983560562133789,5.211113929748535],[4.018772125244141,5.408483505249023],[4.044218063354492,5.608607292175293],[4.059659957885742,5.811202049255371],[4.064859390258789,6.015983581542969],[4.059429168701172,6.22791862487793],[4.043325424194336,6.436758041381836],[4.0168304443359375,6.64225959777832],[3.9802284240722656,6.8441925048828125],[3.93380069732666,7.042314529418945],[3.8778324127197266,7.236387252807617],[3.812602996826172,7.426172256469727],[3.7383995056152344,7.611433029174805],[3.6555023193359375,7.791929244995117],[3.5641937255859375,7.967424392700195],[3.4647579193115234,8.137680053710938],[3.357476234436035,8.302457809448242],[3.242633819580078,8.461519241333008],[3.120512008666992,8.614625930786133],[2.991392135620117,8.761541366577148],[2.8555612564086914,8.90202522277832],[2.713298797607422,9.03584098815918],[2.564887046813965,9.162750244140625],[2.410612106323242,9.282512664794922],[2.250753402709961,9.394891738891602],[2.085597038269043,9.499650955200195],[1.9154224395751953,9.596549987792969],[1.7405147552490234,9.68535041809082],[1.5611572265625,9.765813827514648],[1.3776302337646484,9.837703704833984],[1.1902179718017578,9.900781631469727],[0.9992046356201172,9.954809188842773],[0.8048715591430664,9.99954605102539],[0.6075019836425781,10.034757614135742],[0.4073781967163086,10.060201644897461],[0.20478343963623047,10.075643539428711],[0,10.080842971801758],[-0.21193408966064453,10.075414657592773],[-0.4207725524902344,10.059309005737305],[-0.6262760162353516,10.032814025878906],[-0.8282070159912109,9.996212005615234],[-1.0263290405273438,9.949785232543945],[-1.2204017639160156,9.893815994262695],[-1.410186767578125,9.828588485717773],[-1.5954465866088867,9.754384994506836],[-1.7759437561035156,9.671485900878906],[-1.9514389038085938,9.580177307128906],[-2.121694564819336,9.480741500854492],[-2.2864723205566406,9.37346076965332],[-2.4455337524414062,9.25861930847168],[-2.5986413955688477,9.136495590209961],[-2.745555877685547,9.007377624511719],[-2.886040687561035,8.871545791625977],[-3.0198564529418945,8.72928237915039],[-3.1467647552490234,8.58087158203125],[-3.2665281295776367,8.426595687866211],[-3.3789072036743164,8.26673698425293],[-3.4836654663085938,8.101581573486328],[-3.580564498901367,7.931407928466797],[-3.6693649291992188,7.756500244140625],[-3.7498292922973633,7.577140808105469],[-3.821718215942383,7.39361572265625],[-3.884796142578125,7.206203460693359],[-3.938823699951172,7.015188217163086],[-3.983560562133789,6.820856094360352],[-4.018771648406982,6.62348747253418],[-4.044217109680176,6.423362731933594],[-4.059658527374268,6.220767974853516],[-4.064859390258789,6.015983581542969],[-4.055392265319824,5.728410720825195],[-4.027228355407715,5.44548225402832],[-3.9807252883911133,5.16802978515625],[-3.916240692138672,4.896888732910156],[-3.83413028717041,4.632892608642578],[-3.7347536087036133,4.376873970031738],[-3.6184654235839844,4.129669189453125],[-3.4856252670288086,3.8921079635620117],[-3.336587905883789,3.665027618408203],[-3.1717119216918945,3.449258804321289],[-2.991353988647461,3.2456369400024414],[-2.795872688293457,3.054995536804199],[-2.585622787475586,2.8781681060791016],[-2.360963821411133,2.7159881591796875],[-2.122251510620117,2.5692901611328125],[-1.8698434829711914,2.4389076232910156],[-2.6015148162841797,0.650390625],[-2.6015148162841797,0.650390625],[-2.8782453536987305,0.7939214706420898],[-3.144331932067871,0.9497756958007812],[-3.3996124267578125,1.1174211502075195],[-3.643922805786133,1.2963199615478516],[-3.8770971298217773,1.4859371185302734],[-4.098974704742432,1.685734748840332],[-4.309389114379883,1.8951797485351562],[-4.5081787109375,2.1137351989746094],[-4.695178031921387,2.3408641815185547],[-4.870224952697754,2.5760316848754883],[-5.033154487609863,2.8187007904052734],[-5.183803081512451,3.068338394165039],[-5.322007179260254,3.3244056701660156],[-5.447603225708008,3.586367607116699],[-5.560426712036133,3.853689193725586],[-5.660314559936523,4.125831604003906],[-5.747101783752441,4.402263641357422],[-5.820626735687256,4.682445526123047],[-5.88072395324707,4.96584415435791],[-5.927229881286621,5.251920700073242],[-5.959981441497803,5.540142059326172],[-5.978815078735352,5.829970359802246],[-5.983565330505371,6.120870590209961],[-5.974069595336914,6.4123077392578125],[-5.950164794921875,6.703742980957031],[-5.911684989929199,6.9946441650390625],[-5.858469009399414,7.28447151184082],[-5.790351390838623,7.57269287109375],[-5.7071685791015625,7.858770370483398],[-5.608757019042969,8.142168045043945],[-5.494953632354736,8.42234992980957],[-5.365592956542969,8.698781967163086],[-5.2220635414123535,8.975515365600586],[-5.0662078857421875,9.241607666015625],[-4.898563385009766,9.496889114379883],[-4.719664573669434,9.741201400756836],[-4.53004789352417,9.97437858581543],[-4.330248832702637,10.196256637573242],[-4.120804309844971,10.406675338745117],[-3.902250289916992,10.605464935302734],[-3.6751203536987305,10.792465209960938],[-3.439952850341797,10.967512130737305],[-3.1972827911376953,11.130441665649414],[-2.9476470947265625,11.281089782714844],[-2.691579818725586,11.419294357299805],[-2.429616928100586,11.54488754272461],[-2.1622962951660156,11.657711029052734],[-1.8901519775390625,11.757596969604492],[-1.6137208938598633,11.844385147094727],[-1.3335380554199219,11.91790771484375],[-1.050140380859375,11.978004455566406],[-0.7640628814697266,12.024507522583008],[-0.4758424758911133,12.057258605957031],[-0.18601417541503906,12.076089859008789],[0.10488700866699219,12.080839157104492],[0.39632320404052734,12.071342468261719],[0.6877584457397461,12.047435760498047],[0.9786586761474609,12.008955001831055],[1.2684879302978516,11.955738067626953],[1.5567083358764648,11.88762092590332],[1.8427867889404297,11.804435729980469],[2.12618350982666,11.706024169921875],[2.4063663482666016,11.592218399047852],[2.6827964782714844,11.462860107421875],[2.9595279693603516,11.319330215454102],[3.225614547729492,11.163475036621094],[3.4808950424194336,10.995828628540039],[3.725203514099121,10.816930770874023],[3.9583797454833984,10.627313613891602],[4.180255889892578,10.427515029907227],[4.3906707763671875,10.218070983886719],[4.589460372924805,9.999517440795898],[4.776460647583008,9.77238655090332],[4.951507568359375,9.537220001220703],[5.114437103271484,9.294549942016602],[5.265085220336914,9.044912338256836],[5.403289794921875,8.788846969604492],[5.5288848876953125,8.526884078979492],[5.6417083740234375,8.259561538696289],[5.741596221923828,7.987417221069336],[5.8283843994140625,7.710987091064453],[5.901908874511719,7.430803298950195],[5.962005615234375,7.147407531738281],[6.008510589599609,6.861330032348633],[6.041263580322266,6.573108673095703],[6.060096740722656,6.283281326293945],[6.064846038818359,5.992380142211914],[6.055351257324219,5.700943946838379],[6.03144645690918,5.409507751464844],[5.99296760559082,5.1186065673828125],[5.939750671386719,4.828778266906738],[5.871633529663086,4.540557861328125],[5.788450241088867,4.254480361938477],[5.690040588378906,3.9710826873779297],[5.576234817504883,3.6909008026123047],[5.446876525878906,3.414468765258789],[5.236549377441406,3.0411930084228516],[5.002763748168945,2.6842308044433594],[4.746826171875,2.3446550369262695],[4.4700469970703125,2.0235366821289062],[4.173738479614258,1.7219486236572266],[3.8592090606689453,1.4409618377685547],[3.527769088745117,1.181650161743164],[3.180727005004883,0.9450826644897461],[2.8193931579589844,0.7323322296142578],[2.445079803466797,0.5444717407226562],[2.0590953826904297,0.3825712203979492],[1.6627492904663086,0.24770355224609375],[1.2573509216308594,0.14094161987304688],[0.8442134857177734,0.0633554458618164],[0.42464447021484375,0.016017913818359375],[-0.0000476837158203125,0],[0,0]]},{"type":"line","version":124,"versionNonce":1959771730,"isDeleted":true,"id":"QvDFKQuoYBb8QKTP-szuw","fillStyle":"hachure","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":200,"y":380,"strokeColor":"#000000","backgroundColor":"transparent","width":0,"height":120,"seed":1520975169,"groupIds":[],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":null,"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[0,120]],"fontFamily":2},{"type":"text","version":391,"versionNonce":1339000782,"isDeleted":true,"id":"hnC_bsf2Afagia8FOc5FB","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":1,"opacity":80,"angle":0,"x":460,"y":680,"strokeColor":"#202124","backgroundColor":"transparent","width":124,"height":19,"seed":821424975,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"p0S5NKIgKqSfDkV9tM2wc","label":"Region","resource":"region","type":"child"},"fontSize":16.444444444444446,"fontFamily":2,"text":"DATA ANALYSIS","baseline":15,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"DATA ANALYSIS"},{"type":"rectangle","version":132,"versionNonce":2091394066,"isDeleted":true,"id":"UbTdotD4BefGl3ikKibHf","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":620,"y":160,"strokeColor":"#202124","backgroundColor":"#FFF","width":240,"height":80,"seed":2014375201,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"container"}},{"type":"text","version":124,"versionNonce":476667406,"isDeleted":true,"id":"ZruJ0Dr4CXrrcS3v5JbbF","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":636,"y":176,"strokeColor":"#1A73F8","backgroundColor":"transparent","width":160,"height":18,"seed":2140713327,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"},"fontSize":16,"fontFamily":2,"text":"Cloud Storage","baseline":16,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Cloud Storage"},{"type":"text","version":134,"versionNonce":1072550354,"isDeleted":true,"id":"Gx1803BvWzRHZzU4lHskY","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":636,"y":198,"strokeColor":"#202124","backgroundColor":"transparent","width":74,"height":19,"seed":1754833153,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"},"fontSize":16,"fontFamily":2,"text":"Data Lake","baseline":15,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Data Lake"},{"type":"rectangle","version":124,"versionNonce":1542351950,"isDeleted":true,"id":"HRvci0cWXPKn_nWSmNbOi","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":822,"y":180,"strokeColor":"transparent","backgroundColor":"#aecbfa","width":20,"height":7,"seed":58633103,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"rectangle","version":124,"versionNonce":1907869586,"isDeleted":true,"id":"LywRVvMkWXe1OQXIDWI4J","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":840,"y":180,"strokeColor":"transparent","backgroundColor":"#669df6","width":2,"height":7,"seed":2042550497,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"line","version":124,"versionNonce":2084024974,"isDeleted":true,"id":"oSdFKzdYPmvznI_tHpb6s","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":842,"y":180,"strokeColor":"#00000000","backgroundColor":"#4285f4","width":2,"height":7,"seed":685793711,"groupIds":["IH1KPRANnsiP1tsa3xD8k","ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,7],[0,0],[0,0]]},{"type":"rectangle","version":124,"versionNonce":1245513042,"isDeleted":true,"id":"VndU5Z2yer77e2BhpirKa","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":822,"y":180,"strokeColor":"transparent","backgroundColor":"#669df6","width":2,"height":7,"seed":487789761,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"rectangle","version":124,"versionNonce":1207840974,"isDeleted":true,"id":"pwG-8shbFVZi3pmwR6OGY","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":826,"y":183,"strokeColor":"transparent","backgroundColor":"#fff","width":6,"height":1,"seed":1088836559,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"rectangle","version":124,"versionNonce":1658096402,"isDeleted":true,"id":"7REEO6xhenBL-dRxy7oOZ","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":835,"y":182,"strokeColor":"transparent","backgroundColor":"#fff","width":3,"height":3,"seed":1714738337,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"rectangle","version":124,"versionNonce":1255859982,"isDeleted":true,"id":"fTopVi_tyi1Rqvh6JCFi7","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":822,"y":189,"strokeColor":"transparent","backgroundColor":"#aecbfa","width":20,"height":7,"seed":1672020463,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"rectangle","version":124,"versionNonce":301291730,"isDeleted":true,"id":"bg70mrO7enesWDllTvU4_","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":840,"y":189,"strokeColor":"transparent","backgroundColor":"#669df6","width":2,"height":7,"seed":1221826689,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"line","version":124,"versionNonce":893834574,"isDeleted":true,"id":"9s1bLMBaGYxrz7ltyS9lb","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":842,"y":189,"strokeColor":"#00000000","backgroundColor":"#4285f4","width":2,"height":7,"seed":305196047,"groupIds":["YbOeYVwfD8p5X2CLELLai","ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[-2,0],[-2,7],[0,0],[0,0]]},{"type":"rectangle","version":124,"versionNonce":1194749586,"isDeleted":true,"id":"b_DfqH7PtMbxEm0GHMtOl","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":822,"y":189,"strokeColor":"transparent","backgroundColor":"#669df6","width":2,"height":7,"seed":380559457,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"rectangle","version":124,"versionNonce":1083898766,"isDeleted":true,"id":"X-aTibOLxLtCuD-u6BgQ4","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":826,"y":192,"strokeColor":"transparent","backgroundColor":"#fff","width":6,"height":1,"seed":410423855,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"rectangle","version":124,"versionNonce":1733217362,"isDeleted":true,"id":"4zlmqfIt4KyH5Fhp0-pBa","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":835,"y":191,"strokeColor":"transparent","backgroundColor":"#fff","width":3,"height":3,"seed":1033251905,"groupIds":["ucBR21mRwjJKPh7u5uTFE","xRQ6CUkQXr2lza9OcgRV7"],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"QzD_9h41xrBE4QdwJfF-N","label":"Cloud Storage","resource":"google_storage_bucket","type":"child"}},{"type":"arrow","version":144,"versionNonce":319838670,"isDeleted":true,"id":"4kXwJH1dLqUAAORSO3NPX","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":200,"y":500,"strokeColor":"#202124","backgroundColor":"#202124","width":79,"height":0,"seed":794981455,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":null,"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[79,0]],"fontFamily":2},{"type":"arrow","version":122,"versionNonce":672494098,"isDeleted":true,"id":"0jBnfLa8x-7PG-dHNSIyq","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":520,"y":500,"strokeColor":"#202124","backgroundColor":"#202124","width":100,"height":0,"seed":1164508193,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":null,"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[100,0]],"fontFamily":2},{"type":"arrow","version":120,"versionNonce":599781390,"isDeleted":true,"id":"aQLxPaQ8P9w9EYGk6G49s","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":400,"y":340,"strokeColor":"#202124","backgroundColor":"#202124","width":0,"height":120,"seed":1590497903,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":{"focus":0.3,"gap":16,"elementId":"rasyQ0CHhsp3CsEfuzqpg"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[0,120]],"fontFamily":2},{"type":"line","version":115,"versionNonce":1820418002,"isDeleted":true,"id":"aTYsV-Ig4m1PW-zIZof3B","fillStyle":"hachure","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":400,"y":340,"strokeColor":"#000000","backgroundColor":"transparent","width":40,"height":0,"seed":236376065,"groupIds":[],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":null,"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[40,0]],"fontFamily":2},{"type":"arrow","version":117,"versionNonce":513982030,"isDeleted":true,"id":"bglfe1poYP5Gp9RwIy5pd","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":780,"y":340,"strokeColor":"#202124","backgroundColor":"#202124","width":100,"height":0,"seed":528411791,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":null,"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[-100,0]],"fontFamily":2},{"type":"line","version":118,"versionNonce":547984786,"isDeleted":true,"id":"xw6Kr6s7f0SdHNoJp5uKl","fillStyle":"hachure","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":780,"y":240,"strokeColor":"#000000","backgroundColor":"transparent","width":0,"height":100,"seed":1302276065,"groupIds":[],"strokeSharpness":"round","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":null,"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[0,100]],"fontFamily":2},{"type":"arrow","version":124,"versionNonce":1217512590,"isDeleted":true,"id":"oeXAa8J4xvSm11RODwd77","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":720,"y":-75.04587155963304,"strokeColor":"#202124","backgroundColor":"#202124","width":0,"height":234.04587155963304,"seed":1026589359,"groupIds":[],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"startBinding":null,"endBinding":{"focus":-0.16666666666666666,"gap":1,"elementId":"UbTdotD4BefGl3ikKibHf"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":"triangle","points":[[0,0],[0,234.04587155963304]],"fontFamily":2},{"type":"ellipse","version":398,"versionNonce":365237074,"isDeleted":true,"id":"WgcYDxo58a2wE9xsAIF3n","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":180,"y":220,"strokeColor":"#202124","backgroundColor":"#202124","width":32,"height":35,"seed":1309770689,"groupIds":["sKoYG8z0zStXephHuji8q"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829078,"link":null,"locked":false,"customData":{"boxId":"UDl3vtAfeea5HacfMqrtg","label":"Step Circle","type":"child"}},{"type":"text","version":358,"versionNonce":1665532622,"isDeleted":true,"id":"x-TabJO45EGrpsmvJVsFn","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":190.5,"y":228,"strokeColor":"#FFFFFF","backgroundColor":"#202124","width":9,"height":16,"seed":2022331599,"groupIds":["sKoYG8z0zStXephHuji8q"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"UDl3vtAfeea5HacfMqrtg","label":"Step Circle","type":"child"},"fontSize":14,"fontFamily":2,"text":"2","baseline":13,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"2"},{"type":"text","version":114,"versionNonce":1579866386,"isDeleted":true,"id":"VcmfJFPr2XDMD5oP86qvT","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":225,"y":426,"strokeColor":"#000000","backgroundColor":"transparent","width":22,"height":23,"seed":1804428193,"groupIds":["sKoYG8z0zStXephHuji8q"],"strokeSharpness":"round","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"fontSize":20,"fontFamily":2,"text":"","baseline":19,"textAlign":"center","verticalAlign":"middle","containerId":"oXmrarFjLAOt0by1KTAta","originalText":""},{"type":"ellipse","version":424,"versionNonce":291010830,"isDeleted":true,"id":"Sv27OUEcC8ZY5BOLPXlhv","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":340,"y":340,"strokeColor":"#202124","backgroundColor":"#202124","width":32,"height":35,"seed":1764025071,"groupIds":["O7LUIBeCSIuGQHsVEA7Px"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"GmS_6aXjOFF1P2_aEunVZ","label":"Step Circle","type":"child"}},{"type":"text","version":385,"versionNonce":693233362,"isDeleted":true,"id":"yXcilfDK0J6A66339SCbG","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":350.5,"y":348,"strokeColor":"#FFFFFF","backgroundColor":"#202124","width":9,"height":16,"seed":1380075393,"groupIds":["O7LUIBeCSIuGQHsVEA7Px"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"GmS_6aXjOFF1P2_aEunVZ","label":"Step Circle","type":"child"},"fontSize":14,"fontFamily":2,"text":"3","baseline":13,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"3"},{"type":"text","version":114,"versionNonce":977413966,"isDeleted":true,"id":"iLXMrKx8RLV-Sos1eskeo","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":1165,"y":360,"strokeColor":"#000000","backgroundColor":"transparent","width":22,"height":23,"seed":529050895,"groupIds":["O7LUIBeCSIuGQHsVEA7Px"],"strokeSharpness":"round","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"fontSize":20,"fontFamily":2,"text":"","baseline":19,"textAlign":"center","verticalAlign":"middle","containerId":"oXmrarFjLAOt0by1KTAta","originalText":""},{"type":"ellipse","version":399,"versionNonce":533806226,"isDeleted":true,"id":"Q4D7JXQYit9b5nxW3hn4j","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":400,"y":260,"strokeColor":"#202124","backgroundColor":"#202124","width":32,"height":35,"seed":2087694177,"groupIds":["ZuqjW4EZk1UumFp3fWMgl"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"_n40AdILG9y0GGRud2SzX","label":"Step Circle","type":"child"}},{"type":"text","version":361,"versionNonce":1851526542,"isDeleted":true,"id":"AnTMx6V9LgtkW2Fp_hryv","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":410.5,"y":268,"strokeColor":"#FFFFFF","backgroundColor":"#202124","width":9,"height":16,"seed":120468271,"groupIds":["ZuqjW4EZk1UumFp3fWMgl"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"_n40AdILG9y0GGRud2SzX","label":"Step Circle","type":"child"},"fontSize":14,"fontFamily":2,"text":"4","baseline":13,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"4"},{"type":"ellipse","version":450,"versionNonce":1063246418,"isDeleted":true,"id":"FUIj7F7KR2AQBZ9sHxitX","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":620,"y":220,"strokeColor":"#202124","backgroundColor":"#202124","width":32,"height":35,"seed":1885674305,"groupIds":["rZKDvg7YKfG9oHP82cudH"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"_kQwilXDXKZFR2PtPYdN_","label":"Step Circle","type":"child"}},{"type":"text","version":414,"versionNonce":1256139726,"isDeleted":true,"id":"0rJf4nz36yEZg2zbeKDba","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":630.5,"y":228,"strokeColor":"#FFFFFF","backgroundColor":"#202124","width":9,"height":16,"seed":142472527,"groupIds":["rZKDvg7YKfG9oHP82cudH"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"_kQwilXDXKZFR2PtPYdN_","label":"Step Circle","type":"child"},"fontSize":14,"fontFamily":2,"text":"5","baseline":13,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"5"},{"type":"rectangle","version":128,"versionNonce":919912466,"isDeleted":true,"id":"TYqgrS7MVCDyXgTBUof2z","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":420,"y":-80,"strokeColor":"#202124","backgroundColor":"#FFF","width":82,"height":82,"seed":1450900623,"groupIds":["U8woTKgdrEwJaRN1Aomu3"],"strokeSharpness":"round","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{}},{"type":"text","version":136,"versionNonce":1575256590,"isDeleted":true,"id":"EM8ByicYxiVyFWTjY7F0v","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":424,"y":-32,"strokeColor":"#202124","backgroundColor":"transparent","width":74,"height":19,"seed":539760609,"groupIds":["U8woTKgdrEwJaRN1Aomu3"],"strokeSharpness":"round","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{},"fontSize":16,"fontFamily":2,"text":"Developer","baseline":15,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"Developer"},{"type":"line","version":126,"versionNonce":1109847506,"isDeleted":true,"id":"AKKBb6Y5tEIZWOevQlLQw","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":449,"y":-64,"strokeColor":"#00000000","backgroundColor":"#00000000","width":24,"height":24,"seed":1512739503,"groupIds":["K8d5DhR8_PNGXDPvOqVfM","U8woTKgdrEwJaRN1Aomu3"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[24,0],[24,24],[0,24],[0,0]]},{"type":"line","version":126,"versionNonce":174395470,"isDeleted":true,"id":"Dkr7uNNPrn_WRd-elpKU0","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":465.5,"y":-52,"strokeColor":"#00000000","backgroundColor":"#000","width":4.989999771118164,"height":5,"seed":562066369,"groupIds":["5zuHH6g7_6MZroZNqkN6A","U8woTKgdrEwJaRN1Aomu3"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[0.9712505340576172,-0.1965627670288086],[1.7625007629394531,-0.7325000762939453],[2.2950000762939453,-1.5271873474121094],[2.489999771118164,-2.5],[2.2950000762939453,-3.4728126525878906],[1.7625007629394531,-4.267499923706055],[0.9712505340576172,-4.80343770980835],[0,-5],[-0.9728126525878906,-4.80343770980835],[-1.7674999237060547,-4.267499923706055],[-2.3034372329711914,-3.4728126525878906],[-2.5,-2.5],[-2.3034372329711914,-1.5271873474121094],[-1.7674999237060547,-0.7325000762939453],[-0.9728126525878906,-0.1965627670288086],[0,0],[0,0]]},{"type":"line","version":126,"versionNonce":107832210,"isDeleted":true,"id":"uQ-etcTLk09BlvRW4HgF7","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":458,"y":-53,"strokeColor":"#00000000","backgroundColor":"#000","width":5.989999771118164,"height":6,"seed":197289167,"groupIds":["5zuHH6g7_6MZroZNqkN6A","U8woTKgdrEwJaRN1Aomu3"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[1.1674995422363281,-0.23531246185302734],[2.1175003051757812,-0.8774995803833008],[2.7562503814697266,-1.830937385559082],[2.989999771118164,-3],[2.7562503814697266,-4.169062614440918],[2.1175003051757812,-5.122499942779541],[1.1674995422363281,-5.764687538146973],[0,-6],[-1.169062614440918,-5.764687538146973],[-2.122499942779541,-5.122499942779541],[-2.7646875381469727,-4.169062614440918],[-3,-3],[-2.7646875381469727,-1.830937385559082],[-2.122499942779541,-0.8774995803833008],[-1.169062614440918,-0.23531246185302734],[0,0],[0,0]]},{"type":"line","version":126,"versionNonce":1815729806,"isDeleted":true,"id":"ZGf4wiy2xRo8kbHiZvHAO","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":465.5,"y":-50,"strokeColor":"#00000000","backgroundColor":"#000","width":11,"height":5,"seed":1402885025,"groupIds":["5zuHH6g7_6MZroZNqkN6A","U8woTKgdrEwJaRN1Aomu3"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-1.6314058303833008,0.17234420776367188],[-3.4362497329711914,0.6887502670288086],[-4.897968292236328,1.5482816696166992],[-5.338730812072754,2.106426239013672],[-5.5,2.75],[-5.5,5],[5.5,5],[5.5,2.75],[5.5,2.75],[5.3387298583984375,2.106426239013672],[4.897968292236328,1.5482816696166992],[3.436250686645508,0.6887502670288086],[1.6314067840576172,0.17234420776367188],[0,0],[0,0]]},{"type":"line","version":126,"versionNonce":1843339602,"isDeleted":true,"id":"vwLofSoJ4tkD5cjUQ-9OC","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":458,"y":-51,"strokeColor":"#00000000","backgroundColor":"#000","width":9.369999885559082,"height":6,"seed":2061169391,"groupIds":["5zuHH6g7_6MZroZNqkN6A","U8woTKgdrEwJaRN1Aomu3"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.9697456359863281,0.054823875427246094],[-2.076718807220459,0.21921920776367188],[-4.37375020980835,0.8762502670288086],[-5.399511814117432,1.36865234375],[-6.233906269073486,1.9701566696166992],[-6.794785261154175,2.680644989013672],[-7,3.5],[-7,6],[0,6],[0,3.75],[0,3.75],[0.08343791961669922,3.0081253051757812],[0.4200000762939453,2.119999885559082],[1.1390628814697266,1.1793746948242188],[2.369999885559082,0.2799997329711914],[1.1062498092651367,0.07250022888183594],[0,0],[0,0]]},{"type":"rectangle","version":132,"versionNonce":1008456910,"isDeleted":true,"id":"8lyzvlLPRT1neo7PNl089","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":520,"y":-80,"strokeColor":"#202124","backgroundColor":"#FFF","width":82,"height":82,"seed":734074543,"groupIds":["4MJpwYGKEmLPjhC4L-XaG"],"strokeSharpness":"round","boundElements":[{"id":"5NHi5KE_nu-zXqdTwd3J_","type":"arrow"}],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"zNWBGw3v8bijUbxL8x0YA"}},{"type":"text","version":140,"versionNonce":64169746,"isDeleted":true,"id":"Kk08iw9Jk2r_Bzsvjt5n1","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":524,"y":-32,"strokeColor":"#202124","backgroundColor":"transparent","width":74,"height":19,"seed":1032073153,"groupIds":["4MJpwYGKEmLPjhC4L-XaG"],"strokeSharpness":"round","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"zNWBGw3v8bijUbxL8x0YA"},"fontSize":16,"fontFamily":2,"text":"Developer","baseline":15,"textAlign":"center","verticalAlign":"top","containerId":null,"originalText":"Developer"},{"type":"line","version":130,"versionNonce":866388750,"isDeleted":true,"id":"es-hr1HCnkN1aSsNv04sB","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":549,"y":-64,"strokeColor":"#00000000","backgroundColor":"#00000000","width":24,"height":24,"seed":1877502159,"groupIds":["XDjRWsuEDPeRzPM0kU76T","4MJpwYGKEmLPjhC4L-XaG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"zNWBGw3v8bijUbxL8x0YA"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[24,0],[24,24],[0,24],[0,0]]},{"type":"line","version":130,"versionNonce":1354790098,"isDeleted":true,"id":"Q9Yz_yZmLRgNwA0Mcu3Zf","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":565.5,"y":-52,"strokeColor":"#00000000","backgroundColor":"#000","width":4.989999771118164,"height":5,"seed":801804193,"groupIds":["B0C5TjghhcUZfFfOKrANO","4MJpwYGKEmLPjhC4L-XaG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"zNWBGw3v8bijUbxL8x0YA"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[0.9712505340576172,-0.1965627670288086],[1.7625007629394531,-0.7325000762939453],[2.2950000762939453,-1.5271873474121094],[2.489999771118164,-2.5],[2.2950000762939453,-3.4728126525878906],[1.7625007629394531,-4.267499923706055],[0.9712505340576172,-4.80343770980835],[0,-5],[-0.9728126525878906,-4.80343770980835],[-1.7674999237060547,-4.267499923706055],[-2.3034372329711914,-3.4728126525878906],[-2.5,-2.5],[-2.3034372329711914,-1.5271873474121094],[-1.7674999237060547,-0.7325000762939453],[-0.9728126525878906,-0.1965627670288086],[0,0],[0,0]]},{"type":"line","version":130,"versionNonce":1900771662,"isDeleted":true,"id":"2BzQDMLI6fWdDtqNWcI4C","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":558,"y":-53,"strokeColor":"#00000000","backgroundColor":"#000","width":5.989999771118164,"height":6,"seed":1939896047,"groupIds":["B0C5TjghhcUZfFfOKrANO","4MJpwYGKEmLPjhC4L-XaG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"zNWBGw3v8bijUbxL8x0YA"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[1.1674995422363281,-0.23531246185302734],[2.1175003051757812,-0.8774995803833008],[2.7562503814697266,-1.830937385559082],[2.989999771118164,-3],[2.7562503814697266,-4.169062614440918],[2.1175003051757812,-5.122499942779541],[1.1674995422363281,-5.764687538146973],[0,-6],[-1.169062614440918,-5.764687538146973],[-2.122499942779541,-5.122499942779541],[-2.7646875381469727,-4.169062614440918],[-3,-3],[-2.7646875381469727,-1.830937385559082],[-2.122499942779541,-0.8774995803833008],[-1.169062614440918,-0.23531246185302734],[0,0],[0,0]]},{"type":"line","version":130,"versionNonce":910035602,"isDeleted":true,"id":"VmqYStP0_LLB8uoPsOA_X","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":565.5,"y":-50,"strokeColor":"#00000000","backgroundColor":"#000","width":11,"height":5,"seed":1845097345,"groupIds":["B0C5TjghhcUZfFfOKrANO","4MJpwYGKEmLPjhC4L-XaG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"zNWBGw3v8bijUbxL8x0YA"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-1.6314058303833008,0.17234420776367188],[-3.4362497329711914,0.6887502670288086],[-4.897968292236328,1.5482816696166992],[-5.338730812072754,2.106426239013672],[-5.5,2.75],[-5.5,5],[5.5,5],[5.5,2.75],[5.5,2.75],[5.3387298583984375,2.106426239013672],[4.897968292236328,1.5482816696166992],[3.436250686645508,0.6887502670288086],[1.6314067840576172,0.17234420776367188],[0,0],[0,0]]},{"type":"line","version":130,"versionNonce":1550524302,"isDeleted":true,"id":"r4hN_E-Fc0Ig40ByeOjdq","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":558,"y":-51,"strokeColor":"#00000000","backgroundColor":"#000","width":9.369999885559082,"height":6,"seed":2104606991,"groupIds":["B0C5TjghhcUZfFfOKrANO","4MJpwYGKEmLPjhC4L-XaG"],"strokeSharpness":"sharp","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"zNWBGw3v8bijUbxL8x0YA"},"lastCommittedPoint":null,"startArrowhead":null,"endArrowhead":null,"points":[[0,0],[0,0],[-0.9697456359863281,0.054823875427246094],[-2.076718807220459,0.21921920776367188],[-4.37375020980835,0.8762502670288086],[-5.399511814117432,1.36865234375],[-6.233906269073486,1.9701566696166992],[-6.794785261154175,2.680644989013672],[-7,3.5],[-7,6],[0,6],[0,3.75],[0,3.75],[0.08343791961669922,3.0081253051757812],[0.4200000762939453,2.119999885559082],[1.1390628814697266,1.1793746948242188],[2.369999885559082,0.2799997329711914],[1.1062498092651367,0.07250022888183594],[0,0],[0,0]]},{"id":"k6zdvt2zAnaMd8R6qj8Rx","type":"text","x":546.8183925010219,"y":537.2186897277455,"width":7,"height":23,"angle":0,"strokeColor":"#000000","backgroundColor":"transparent","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":0,"opacity":100,"groupIds":[],"strokeSharpness":"round","seed":1872986753,"version":110,"versionNonce":1258481746,"isDeleted":true,"boundElements":null,"updated":1697744829079,"link":null,"locked":false,"text":"","fontSize":20,"fontFamily":2,"textAlign":"left","verticalAlign":"top","baseline":19,"containerId":null,"originalText":""},{"type":"rectangle","version":123,"versionNonce":154926542,"isDeleted":true,"id":"z2UJS9aaoqYGgVA3eupzG","fillStyle":"solid","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":80,"y":120,"strokeColor":"#202124","backgroundColor":"#FFF","width":240,"height":60,"seed":1972446351,"groupIds":["7LxDMulsif7cVqRN1RhNr","6Q9_vbAqAkMudOmvp55ea"],"strokeSharpness":"round","boundElements":[{"id":"u3MHsCfKj6joFmOvIyJhR","type":"arrow"}],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"t4TGrO1ZoAsJ_419-MJ1o","label":"Cloud Source Repositories","type":"container"}},{"type":"text","version":120,"versionNonce":921046546,"isDeleted":true,"id":"o1vDnEM4wH0z6uoeTTS6Y","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":96,"y":136,"strokeColor":"#1a73e8","backgroundColor":"transparent","width":160,"height":33,"seed":1122791393,"groupIds":["7LxDMulsif7cVqRN1RhNr","6Q9_vbAqAkMudOmvp55ea"],"strokeSharpness":"round","boundElements":[{"id":"W9R12Uosv_ysCejW7Zfn5","type":"arrow"}],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"t4TGrO1ZoAsJ_419-MJ1o","label":"Cloud Source Repositories","type":"child"},"fontSize":16,"fontFamily":2,"text":"Cloud Source \nRepositories ","baseline":30,"textAlign":"left","verticalAlign":"top","containerId":null,"originalText":"Cloud Source \nRepositories "},{"type":"text","version":109,"versionNonce":483857422,"isDeleted":true,"id":"4AWkHeZ1eGEI_8hWxHgoB","fillStyle":"hachure","strokeWidth":1,"strokeStyle":"solid","roughness":0,"opacity":100,"angle":0,"x":136,"y":193,"strokeColor":"#202124","backgroundColor":"transparent","width":160,"height":18,"seed":71023279,"groupIds":["7LxDMulsif7cVqRN1RhNr","6Q9_vbAqAkMudOmvp55ea"],"strokeSharpness":"round","boundElements":[],"updated":1697744829079,"link":null,"locked":false,"customData":{"boxId":"t4TGrO1ZoAsJ_419-MJ1o","label":"Cloud Source Repositories","type":"child"},"fontSize":16,"fontFamily":2,"text":"